Rename /feature command to /plan
- Update command matching from /feature to /plan in commands.rs - Update help text, usage message, and example - Update workspace memory references - /feature is no longer recognized (completely removed)
This commit is contained in:
@@ -261,7 +261,7 @@ Structured task planning with cognitive forcing - requires happy/negative/bounda
|
||||
|
||||
- `crates/g3-core/src/tool_definitions.rs` [263..330] - plan.read, plan.write, plan.approve definitions
|
||||
- `crates/g3-core/src/tool_dispatch.rs` [36..38] - dispatch cases for plan tools
|
||||
- `crates/g3-cli/src/commands.rs` [460..490] - `/feature` command starts Plan Mode
|
||||
- `crates/g3-cli/src/commands.rs` [460..490] - `/plan` command starts Plan Mode
|
||||
- `crates/g3-core/src/prompts.rs` [21..130] - SHARED_PLAN_SECTION replaces TODO section
|
||||
|
||||
**Plan Schema (YAML)**:
|
||||
@@ -282,7 +282,7 @@ items:
|
||||
notes: Implementation explanation # required when done
|
||||
```
|
||||
|
||||
**Workflow**: `/feature <desc>` → agent drafts plan → user approves → agent implements → plan_verify() called when complete
|
||||
**Workflow**: `/plan <desc>` → agent drafts plan → user approves → agent implements → plan_verify() called when complete
|
||||
|
||||
### Plan Mode Tool Names (IMPORTANT)
|
||||
Tool names must use underscores, not dots (Anthropic API restriction: `^[a-zA-Z0-9_-]{1,128}$`).
|
||||
|
||||
@@ -74,7 +74,7 @@ pub async fn handle_command<W: UiWriter>(
|
||||
output.print(" /readme - Reload README.md and AGENTS.md from disk");
|
||||
output.print(" /stats - Show detailed context and performance statistics");
|
||||
output.print(" /run <file> - Read file and execute as prompt");
|
||||
output.print(" /feature <description> - Start Plan Mode for a new feature");
|
||||
output.print(" /plan <description> - Start Plan Mode for a new feature");
|
||||
output.print(" /help - Show this help message");
|
||||
output.print(" exit/quit - Exit the interactive session");
|
||||
output.print("");
|
||||
@@ -453,16 +453,16 @@ pub async fn handle_command<W: UiWriter>(
|
||||
}
|
||||
Ok(true)
|
||||
}
|
||||
cmd if cmd.starts_with("/feature") => {
|
||||
cmd if cmd.starts_with("/plan") => {
|
||||
let parts: Vec<&str> = cmd.splitn(2, ' ').collect();
|
||||
if parts.len() < 2 || parts[1].trim().is_empty() {
|
||||
output.print("Usage: /feature <description>");
|
||||
output.print("Usage: /plan <description>");
|
||||
output.print("Starts Plan Mode for a new feature. The agent will:");
|
||||
output.print(" 1. Research and draft a Plan with checks (happy/negative/boundary)");
|
||||
output.print(" 2. Ask clarifying questions if needed");
|
||||
output.print(" 3. Request approval before coding");
|
||||
output.print("");
|
||||
output.print("Example: /feature Add CSV import for comic book metadata");
|
||||
output.print("Example: /plan Add CSV import for comic book metadata");
|
||||
} else {
|
||||
let feature_description = parts[1].trim();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user