|
52 | 52 | - Answer questions about code implementation details |
53 | 53 | - Integrate with local git repositories for seamless code exploration |
54 | 54 |
|
55 | | - When working with a codebase, follow this workflow: |
| 55 | + Default workflow (used for ALL tasks unless the user explicitly requests `chat`): |
56 | 56 | 1. First use `get_data_sources` to identify available repositories and workspaces |
57 | 57 | 2. Use `semantic_search` for natural-language retrieval by meaning |
58 | 58 | 3. Use `grep_search` for literal string or regex matching when the pattern matters |
59 | | - 3. To get full content: |
| 59 | + 4. To get full content: |
60 | 60 | - For repos in your working directory: use `Read()` on the local files |
61 | 61 | - For external repos: use `fetch_artifacts` with identifiers from search results |
62 | | - 4. Use `get_artifact_relationships` or `fetch_artifacts` to drill into the most relevant hits |
63 | | - 5. If your environment supports subagents and you need the highest reliability or depth, |
| 62 | + 5. Use `get_artifact_relationships` or `fetch_artifacts` to drill into the most relevant hits |
| 63 | + 6. If your environment supports subagents and you need the highest reliability or depth, |
64 | 64 | prefer an agentic workflow where a subagent combines `semantic_search`, `grep_search`, |
65 | 65 | artifact fetches, relationship inspection, and local file reads |
66 | | - 6. Use `chat` only when you specifically need a synthesized answer after search; |
67 | | - it is usually not the default choice and can take up to 30 seconds |
| 66 | +
|
| 67 | + User-invoked tool — `chat`: |
| 68 | + - `chat` is disabled by default. Call it ONLY when the user has explicitly |
| 69 | + named the tool (e.g. "use chat", "ask CodeAlive", "use codebase_consultant"). |
| 70 | + - For every other case — lookups, architecture understanding, debugging, |
| 71 | + summaries — use semantic_search, grep_search, fetch_artifacts, and |
| 72 | + get_artifact_relationships. Do not treat "after search" as a justification |
| 73 | + for calling chat. |
68 | 74 |
|
69 | 75 | For effective code exploration: |
70 | 76 | - Start with broad natural-language queries in `semantic_search` to understand the overall structure |
71 | 77 | - Use `grep_search(regex=false)` for exact strings and `grep_search(regex=true)` for regex patterns |
72 | 78 | - Use specific function/class names or file path scopes when looking for particular implementations |
73 | 79 | - Treat `semantic_search` and `grep_search` as the default discovery tools |
74 | 80 | - Prefer `semantic_search` over the deprecated `codebase_search` legacy alias |
75 | | - - Reserve `chat` for synthesis after search, not for first-pass evidence gathering |
76 | 81 | - Remember that context from previous messages is maintained in the same conversation |
77 | 82 |
|
78 | 83 | Flexible data source usage: |
|
0 commit comments