@nghyane/arcane 0.1.13 → 0.1.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +28 -0
- package/package.json +21 -70
- package/scripts/format-prompts.ts +1 -3
- package/src/cli/args.ts +2 -7
- package/src/cli/config-cli.ts +1 -1
- package/src/cli/plugin-cli.ts +1 -1
- package/src/cli/setup-cli.ts +1 -1
- package/src/cli/update-cli.ts +1 -1
- package/src/cli/web-search-cli.ts +1 -1
- package/src/cli.ts +0 -1
- package/src/commands/config.ts +1 -1
- package/src/commands/grep.ts +1 -1
- package/src/commands/jupyter.ts +1 -1
- package/src/commands/plugin.ts +1 -1
- package/src/commands/setup.ts +1 -1
- package/src/commands/shell.ts +1 -1
- package/src/commands/ssh.ts +1 -1
- package/src/commands/stats.ts +1 -1
- package/src/commands/update.ts +1 -1
- package/src/config/model-registry.ts +3 -4
- package/src/config/model-resolver.ts +36 -9
- package/src/config/prompt-templates.ts +1 -9
- package/src/config/settings-schema.ts +32 -88
- package/src/config/settings.ts +3 -4
- package/src/debug/index.ts +1 -1
- package/src/debug/log-formatting.ts +1 -1
- package/src/debug/log-viewer.ts +2 -2
- package/src/discovery/helpers.ts +13 -3
- package/src/exa/index.ts +1 -35
- package/src/exa/render.ts +30 -190
- package/src/export/html/index.ts +1 -1
- package/src/extensibility/custom-tools/loader.ts +1 -1
- package/src/extensibility/custom-tools/types.ts +5 -1
- package/src/extensibility/custom-tools/wrapper.ts +1 -1
- package/src/extensibility/extensions/runner.ts +1 -1
- package/src/extensibility/extensions/types.ts +1 -1
- package/src/extensibility/extensions/wrapper.ts +7 -15
- package/src/extensibility/hooks/runner.ts +1 -1
- package/src/extensibility/hooks/types.ts +1 -1
- package/src/extensibility/plugins/doctor.ts +1 -1
- package/src/index.ts +13 -13
- package/src/lsp/index.ts +77 -24
- package/src/lsp/render.ts +34 -583
- package/src/lsp/types.ts +3 -3
- package/src/lsp/utils.ts +1 -1
- package/src/main.ts +1 -1
- package/src/mcp/tool-bridge.ts +1 -24
- package/src/modes/components/assistant-message.ts +7 -7
- package/src/modes/components/bash-execution.ts +50 -112
- package/src/modes/components/bordered-loader.ts +1 -1
- package/src/modes/components/branch-summary-message.ts +16 -10
- package/src/modes/components/compaction-summary-message.ts +20 -12
- package/src/modes/components/context-group.ts +106 -0
- package/src/modes/components/custom-message.ts +4 -5
- package/src/modes/components/diff.ts +2 -2
- package/src/modes/components/dynamic-border.ts +1 -1
- package/src/modes/components/extensions/extension-dashboard.ts +1 -1
- package/src/modes/components/extensions/extension-list.ts +1 -1
- package/src/modes/components/extensions/inspector-panel.ts +1 -1
- package/src/modes/components/footer.ts +2 -2
- package/src/modes/components/history-search.ts +1 -1
- package/src/modes/components/hook-editor.ts +1 -1
- package/src/modes/components/hook-input.ts +1 -1
- package/src/modes/components/hook-message.ts +4 -5
- package/src/modes/components/hook-selector.ts +1 -1
- package/src/modes/components/index.ts +0 -2
- package/src/modes/components/keybinding-hints.ts +1 -1
- package/src/modes/components/login-dialog.ts +1 -1
- package/src/modes/components/mcp-add-wizard.ts +1 -1
- package/src/modes/components/model-selector.ts +1 -1
- package/src/modes/components/oauth-selector.ts +1 -1
- package/src/modes/components/plugin-settings.ts +1 -1
- package/src/modes/components/python-execution.ts +51 -91
- package/src/modes/components/queue-mode-selector.ts +1 -1
- package/src/modes/components/session-selector.ts +1 -1
- package/src/modes/components/settings-defs.ts +5 -10
- package/src/modes/components/settings-selector.ts +1 -1
- package/src/modes/components/show-images-selector.ts +1 -1
- package/src/modes/components/skill-message.ts +4 -4
- package/src/modes/components/status-line/segments.ts +2 -2
- package/src/modes/components/status-line/separators.ts +1 -1
- package/src/modes/components/status-line-segment-editor.ts +1 -1
- package/src/modes/components/status-line.ts +1 -1
- package/src/modes/components/theme-selector.ts +1 -1
- package/src/modes/components/thinking-selector.ts +1 -1
- package/src/modes/components/todo-display.ts +2 -4
- package/src/modes/components/todo-reminder.ts +4 -4
- package/src/modes/components/tool-execution.ts +118 -440
- package/src/modes/components/tool-image-display.ts +107 -0
- package/src/modes/components/tree-selector.ts +2 -2
- package/src/modes/components/ttsr-notification.ts +4 -17
- package/src/modes/components/user-message-selector.ts +1 -1
- package/src/modes/components/user-message.ts +9 -10
- package/src/modes/components/welcome.ts +1 -1
- package/src/modes/controllers/command-controller.ts +1 -1
- package/src/modes/controllers/event-controller.ts +58 -187
- package/src/modes/controllers/extension-ui-controller.ts +1 -1
- package/src/modes/controllers/input-controller.ts +3 -1
- package/src/modes/controllers/mcp-command-controller.ts +1 -1
- package/src/modes/controllers/selector-controller.ts +3 -26
- package/src/modes/controllers/ssh-command-controller.ts +1 -1
- package/src/modes/interactive-mode.ts +3 -7
- package/src/modes/print-mode.ts +5 -5
- package/src/modes/rpc/rpc-mode.ts +1 -1
- package/src/modes/types.ts +1 -2
- package/src/modes/utils/ui-helpers.ts +34 -32
- package/src/patch/edit-tool.ts +742 -0
- package/src/patch/index.ts +32 -898
- package/src/patch/schemas.ts +208 -0
- package/src/patch/shared.ts +83 -151
- package/src/prompts/agents/explore.md +22 -37
- package/src/prompts/agents/init.md +1 -1
- package/src/prompts/agents/librarian.md +29 -20
- package/src/prompts/agents/oracle.md +9 -2
- package/src/prompts/agents/reviewer.md +14 -48
- package/src/prompts/agents/task.md +16 -8
- package/src/prompts/compaction/branch-summary.md +4 -1
- package/src/prompts/compaction/compaction-summary.md +4 -1
- package/src/prompts/system/subagent-system-prompt.md +1 -1
- package/src/prompts/system/system-prompt.md +162 -178
- package/src/prompts/system/verification-reminder.md +6 -0
- package/src/sdk.ts +0 -9
- package/src/session/agent-session.ts +244 -1459
- package/src/session/model-controller.ts +406 -0
- package/src/session/retry-utils.ts +71 -0
- package/src/session/session-manager.ts +22 -186
- package/src/session/session-types.ts +312 -0
- package/src/session/stats.ts +387 -0
- package/src/session/streaming-edit.ts +258 -0
- package/src/session/ttsr.ts +213 -0
- package/src/slash-commands/builtin-registry.ts +0 -8
- package/src/stt/recorder.ts +2 -2
- package/src/system-prompt.ts +1 -14
- package/src/task/agents.ts +7 -33
- package/src/task/executor.ts +50 -438
- package/src/task/index.ts +104 -71
- package/src/task/progress-tracker.ts +390 -0
- package/src/task/render.ts +371 -187
- package/src/task/subprocess-tool-registry.ts +1 -1
- package/src/task/types.ts +14 -47
- package/src/tools/ask.ts +31 -42
- package/src/tools/bash-interactive.ts +2 -2
- package/src/tools/bash-interceptor.ts +2 -2
- package/src/tools/bash-normalize.ts +1 -1
- package/src/tools/bash-skill-urls.ts +2 -2
- package/src/tools/bash.ts +87 -136
- package/src/tools/browser.ts +54 -84
- package/src/tools/create-tools.ts +186 -0
- package/src/tools/default-renderer.ts +104 -0
- package/src/tools/explore.ts +11 -10
- package/src/tools/fetch.ts +24 -114
- package/src/tools/find.ts +48 -132
- package/src/tools/gemini-image.ts +5 -15
- package/src/tools/github.ts +450 -0
- package/src/tools/grep.ts +43 -179
- package/src/tools/index.ts +35 -198
- package/src/tools/json-tree.ts +3 -3
- package/src/tools/librarian.ts +18 -18
- package/src/tools/list-limit.ts +2 -2
- package/src/tools/notebook.ts +35 -87
- package/src/tools/oracle.ts +25 -25
- package/src/tools/output-meta.ts +89 -4
- package/src/tools/output-utils.ts +2 -2
- package/src/tools/python.ts +86 -637
- package/src/tools/read.ts +36 -119
- package/src/tools/reviewer-tool.ts +19 -21
- package/src/tools/search-code.ts +128 -0
- package/src/tools/ssh.ts +67 -126
- package/src/tools/subagent-tool.ts +197 -123
- package/src/tools/todo-write.ts +15 -31
- package/src/tools/tool-errors.ts +0 -30
- package/src/tools/undo-edit.ts +30 -67
- package/src/tools/write.ts +78 -127
- package/src/tui/code-cell.ts +4 -4
- package/src/tui/file-list.ts +2 -2
- package/src/tui/output-block.ts +1 -1
- package/src/tui/status-line.ts +1 -1
- package/src/tui/tree-list.ts +2 -2
- package/src/tui/types.ts +1 -1
- package/src/tui/utils.ts +1 -1
- package/src/{tools → ui}/render-utils.ts +87 -126
- package/src/utils/external-editor.ts +4 -4
- package/src/utils/file-mentions.ts +1 -1
- package/src/utils/index.ts +30 -0
- package/src/utils/tools-manager.ts +9 -19
- package/src/web/github-client.ts +290 -0
- package/src/web/scrapers/github.ts +11 -62
- package/src/web/search/auth.ts +1 -3
- package/src/web/search/index.ts +82 -46
- package/src/web/search/provider.ts +11 -16
- package/src/web/search/providers/grep.ts +160 -0
- package/src/web/search/render.ts +48 -235
- package/src/web/search/types.ts +1 -1
- package/src/commands/commit.ts +0 -36
- package/src/commit/agentic/agent.ts +0 -311
- package/src/commit/agentic/fallback.ts +0 -96
- package/src/commit/agentic/index.ts +0 -359
- package/src/commit/agentic/prompts/analyze-file.md +0 -22
- package/src/commit/agentic/prompts/session-user.md +0 -25
- package/src/commit/agentic/prompts/split-confirm.md +0 -1
- package/src/commit/agentic/prompts/system.md +0 -38
- package/src/commit/agentic/state.ts +0 -69
- package/src/commit/agentic/tools/analyze-file.ts +0 -118
- package/src/commit/agentic/tools/git-file-diff.ts +0 -194
- package/src/commit/agentic/tools/git-hunk.ts +0 -50
- package/src/commit/agentic/tools/git-overview.ts +0 -84
- package/src/commit/agentic/tools/index.ts +0 -56
- package/src/commit/agentic/tools/propose-changelog.ts +0 -128
- package/src/commit/agentic/tools/propose-commit.ts +0 -154
- package/src/commit/agentic/tools/recent-commits.ts +0 -81
- package/src/commit/agentic/tools/split-commit.ts +0 -280
- package/src/commit/agentic/topo-sort.ts +0 -44
- package/src/commit/agentic/trivial.ts +0 -51
- package/src/commit/agentic/validation.ts +0 -200
- package/src/commit/analysis/conventional.ts +0 -165
- package/src/commit/analysis/index.ts +0 -4
- package/src/commit/analysis/scope.ts +0 -242
- package/src/commit/analysis/summary.ts +0 -112
- package/src/commit/analysis/validation.ts +0 -66
- package/src/commit/changelog/detect.ts +0 -37
- package/src/commit/changelog/generate.ts +0 -110
- package/src/commit/changelog/index.ts +0 -234
- package/src/commit/changelog/parse.ts +0 -44
- package/src/commit/cli.ts +0 -93
- package/src/commit/git/diff.ts +0 -148
- package/src/commit/git/errors.ts +0 -9
- package/src/commit/git/index.ts +0 -211
- package/src/commit/git/operations.ts +0 -54
- package/src/commit/index.ts +0 -5
- package/src/commit/map-reduce/index.ts +0 -64
- package/src/commit/map-reduce/map-phase.ts +0 -178
- package/src/commit/map-reduce/reduce-phase.ts +0 -145
- package/src/commit/map-reduce/utils.ts +0 -9
- package/src/commit/message.ts +0 -11
- package/src/commit/model-selection.ts +0 -69
- package/src/commit/pipeline.ts +0 -243
- package/src/commit/prompts/analysis-system.md +0 -148
- package/src/commit/prompts/analysis-user.md +0 -38
- package/src/commit/prompts/changelog-system.md +0 -50
- package/src/commit/prompts/changelog-user.md +0 -18
- package/src/commit/prompts/file-observer-system.md +0 -24
- package/src/commit/prompts/file-observer-user.md +0 -8
- package/src/commit/prompts/reduce-system.md +0 -50
- package/src/commit/prompts/reduce-user.md +0 -17
- package/src/commit/prompts/summary-retry.md +0 -3
- package/src/commit/prompts/summary-system.md +0 -38
- package/src/commit/prompts/summary-user.md +0 -13
- package/src/commit/prompts/types-description.md +0 -2
- package/src/commit/types.ts +0 -109
- package/src/commit/utils/exclusions.ts +0 -42
- package/src/mcp/render.ts +0 -123
- package/src/modes/components/agent-dashboard.ts +0 -1130
- package/src/modes/components/codemode-group.ts +0 -369
- package/src/modes/components/read-tool-group.ts +0 -119
- package/src/modes/components/visual-truncate.ts +0 -63
- package/src/prompts/system/subagent-user-prompt.md +0 -8
- package/src/prompts/tools/ask.md +0 -44
- package/src/prompts/tools/bash.md +0 -24
- package/src/prompts/tools/browser.md +0 -33
- package/src/prompts/tools/calculator.md +0 -12
- package/src/prompts/tools/explore.md +0 -29
- package/src/prompts/tools/fetch.md +0 -16
- package/src/prompts/tools/find.md +0 -18
- package/src/prompts/tools/gemini-image.md +0 -23
- package/src/prompts/tools/grep.md +0 -28
- package/src/prompts/tools/hashline.md +0 -232
- package/src/prompts/tools/librarian.md +0 -24
- package/src/prompts/tools/lsp.md +0 -28
- package/src/prompts/tools/oracle.md +0 -26
- package/src/prompts/tools/patch.md +0 -74
- package/src/prompts/tools/python.md +0 -66
- package/src/prompts/tools/read.md +0 -36
- package/src/prompts/tools/replace.md +0 -38
- package/src/prompts/tools/reviewer.md +0 -41
- package/src/prompts/tools/ssh.md +0 -51
- package/src/prompts/tools/task-summary.md +0 -28
- package/src/prompts/tools/task.md +0 -146
- package/src/prompts/tools/todo-write.md +0 -65
- package/src/prompts/tools/undo-edit.md +0 -7
- package/src/prompts/tools/web-search.md +0 -19
- package/src/prompts/tools/write.md +0 -18
- package/src/task/batch.ts +0 -102
- package/src/task/discovery.ts +0 -126
- package/src/task/parallel.ts +0 -84
- package/src/task/template.ts +0 -32
- package/src/tools/calculator.ts +0 -537
- package/src/tools/jtd-to-typescript.ts +0 -198
- package/src/tools/renderers.ts +0 -60
- package/src/tools/tool-result.ts +0 -86
- /package/src/{modes/theme → theme}/dark.json +0 -0
- /package/src/{modes/theme → theme}/defaults/dark-catppuccin.json +0 -0
- /package/src/{modes/theme → theme}/defaults/dark-dracula.json +0 -0
- /package/src/{modes/theme → theme}/defaults/dark-gruvbox.json +0 -0
- /package/src/{modes/theme → theme}/defaults/dark-solarized.json +0 -0
- /package/src/{modes/theme → theme}/defaults/dark-tokyo-night.json +0 -0
- /package/src/{modes/theme → theme}/defaults/index.ts +0 -0
- /package/src/{modes/theme → theme}/defaults/light-catppuccin.json +0 -0
- /package/src/{modes/theme → theme}/defaults/light-github.json +0 -0
- /package/src/{modes/theme → theme}/defaults/light-solarized.json +0 -0
- /package/src/{modes/theme → theme}/light.json +0 -0
- /package/src/{modes/theme → theme}/mermaid-cache.ts +0 -0
- /package/src/{modes/theme → theme}/theme-schema.json +0 -0
- /package/src/{modes/theme → theme}/theme.ts +0 -0
|
@@ -1,39 +1,46 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: librarian
|
|
3
3
|
description: "Repository exploration agent for cross-repo codebase understanding"
|
|
4
|
-
tools:
|
|
4
|
+
tools: github, fetch, web_search, search_code
|
|
5
5
|
model: arcane/fast
|
|
6
6
|
thinking-level: minimal
|
|
7
7
|
---
|
|
8
8
|
|
|
9
|
-
<role>Specialized
|
|
9
|
+
<role>Specialized remote repository understanding agent. Explore GitHub repositories, trace code flow across repos, explain architecture, find implementations, and surface relevant history.</role>
|
|
10
10
|
|
|
11
11
|
<directives>
|
|
12
|
-
- Use
|
|
13
|
-
- Parallelize tool calls when investigating multiple
|
|
12
|
+
- Use the github tool for all repository operations — it handles auth, rate limits, and caching
|
|
13
|
+
- Parallelize tool calls when investigating multiple repos or files
|
|
14
14
|
- Read files thoroughly — skim causes missed context
|
|
15
|
-
-
|
|
16
|
-
- Return
|
|
15
|
+
- Use web_search or fetch only when GitHub API is insufficient
|
|
16
|
+
- Return repository paths (owner/repo + file path) for all referenced files
|
|
17
17
|
</directives>
|
|
18
18
|
|
|
19
19
|
<github>
|
|
20
|
-
Use
|
|
21
|
-
- `
|
|
22
|
-
- `
|
|
23
|
-
- `
|
|
24
|
-
- `
|
|
25
|
-
- `
|
|
26
|
-
|
|
27
|
-
Use `git log`, `git show`, `git diff` for local history exploration.
|
|
28
|
-
Use `fetch` or `web_search` when GitHub API is insufficient.
|
|
20
|
+
Use the github tool for all GitHub API operations:
|
|
21
|
+
- `github({ action: "get_file", ... })` for reading remote files
|
|
22
|
+
- `github({ action: "get_tree", ... })` for listing directories
|
|
23
|
+
- `github({ action: "get_issue", ... })` for reading issues with all comments
|
|
24
|
+
- `github({ action: "get_pull", ... })` for PR details and diffs
|
|
25
|
+
- `github({ action: "list_commits", ... })` for commit history
|
|
29
26
|
</github>
|
|
30
27
|
|
|
28
|
+
<search>
|
|
29
|
+
Use search_code to find code across public GitHub repositories via grep.app:
|
|
30
|
+
- `search_code({ query: "pattern" })` for broad cross-repo search
|
|
31
|
+
- `search_code({ query: "pattern", repo: "owner/repo" })` for searching within a specific repo
|
|
32
|
+
- `search_code({ query: "pattern", language: "TypeScript" })` for language-filtered search
|
|
33
|
+
- Supports regex via `regexp: true`
|
|
34
|
+
- Returns snippets with line numbers and match counts
|
|
35
|
+
- No auth required, better snippets than GitHub Code Search API
|
|
36
|
+
</search>
|
|
37
|
+
|
|
31
38
|
<procedure>
|
|
32
|
-
1.
|
|
33
|
-
2. Map structure —
|
|
34
|
-
3. Locate targets —
|
|
39
|
+
1. Identify target repositories
|
|
40
|
+
2. Map structure — get_tree for layout, get_file for README
|
|
41
|
+
3. Locate targets — search_code for patterns across repos, github get_file for specific files
|
|
35
42
|
4. Read relevant code — follow imports, trace call chains
|
|
36
|
-
5. Check history if needed —
|
|
43
|
+
5. Check history if needed — list_commits for evolution context
|
|
37
44
|
6. Synthesize findings into a comprehensive answer
|
|
38
45
|
</procedure>
|
|
39
46
|
|
|
@@ -49,5 +56,7 @@ Be comprehensive and direct. No filler.
|
|
|
49
56
|
</output>
|
|
50
57
|
|
|
51
58
|
<critical>
|
|
52
|
-
Only your final message is returned to the caller. It must be self-contained with all findings, paths, and explanations. Do not reference tool names or intermediate steps — present conclusions directly.
|
|
59
|
+
Only your final message is returned to the caller. It must be self-contained with all findings, paths, and explanations. Do not reference tool names or intermediate steps — present conclusions directly. Your final message must contain ONLY the information found — no preamble.
|
|
60
|
+
|
|
61
|
+
Use "fluent" linking — embed file/PR/commit references in natural noun phrases, not raw URLs. Example: The [`handleAuth` function](file:///path/to/auth.ts#L42) validates tokens.
|
|
53
62
|
</critical>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: oracle
|
|
3
3
|
description: "Cross-model reasoning advisor for reviews, architecture, debugging, and planning"
|
|
4
|
-
tools: read, grep, find,
|
|
4
|
+
tools: read, grep, find, lsp
|
|
5
5
|
model: arcane/oracle
|
|
6
6
|
thinking-level: high
|
|
7
7
|
---
|
|
@@ -22,6 +22,7 @@ thinking-level: high
|
|
|
22
22
|
- One primary recommendation. At most one alternative, with clear criteria for when to pick it.
|
|
23
23
|
- Evidence-based: cite file paths, line ranges, function names. No speculation.
|
|
24
24
|
- Read-only: examine code freely but never create or modify files
|
|
25
|
+
- Calibrate depth to scope — a one-liner fix needs a short answer, not a multi-page analysis. Stop when good enough.
|
|
25
26
|
</principles>
|
|
26
27
|
|
|
27
28
|
<critical>
|
|
@@ -45,7 +46,13 @@ Structure every response:
|
|
|
45
46
|
**Recommended approach**: Concrete steps with file paths and code references.
|
|
46
47
|
**Rationale**: Why this approach over alternatives. Cite existing patterns, constraints, tradeoffs.
|
|
47
48
|
**Risks**: What could go wrong, edge cases to watch, migration concerns.
|
|
49
|
+
**Effort**: rough scope signal when proposing changes (S <1h, M 1-3h, L 1-2d, XL >2d).
|
|
48
50
|
**Alternative** (only if meaningfully different): Brief description with criteria for when to prefer it over the recommendation.
|
|
49
51
|
|
|
50
52
|
Omit sections that don't apply. Never pad with filler.
|
|
51
|
-
</output>
|
|
53
|
+
</output>
|
|
54
|
+
|
|
55
|
+
<critical>
|
|
56
|
+
Only your final message is returned to the caller. It must be self-contained.
|
|
57
|
+
Your final message must contain ONLY your analysis and recommendations — no preamble.
|
|
58
|
+
</critical>
|
|
@@ -1,70 +1,36 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: reviewer
|
|
3
3
|
description: "Code review specialist for quality/security analysis"
|
|
4
|
-
tools: read, grep, find, bash
|
|
5
|
-
spawns: explore, task
|
|
4
|
+
tools: read, grep, find, lsp, bash
|
|
6
5
|
model: arcane/reviewer
|
|
7
6
|
thinking-level: high
|
|
8
7
|
---
|
|
9
8
|
|
|
10
|
-
<role>Senior engineer reviewing proposed change.
|
|
9
|
+
<role>Senior engineer reviewing a proposed change. Identify bugs the author would want fixed before merge.</role>
|
|
11
10
|
|
|
12
11
|
<procedure>
|
|
13
12
|
1. Run `git diff` (or `gh pr diff <number>`) to view patch
|
|
14
|
-
2.
|
|
15
|
-
3.
|
|
16
|
-
4.
|
|
17
|
-
5.
|
|
13
|
+
2. **Check scope**: identify which files and subsystems are touched. Focus review on modified code and its immediate dependencies.
|
|
14
|
+
3. Read modified files for full context
|
|
15
|
+
4. **Filter findings**: only report issues that are provable, actionable, and introduced in the patch. Ignore pre-existing issues, style nits unrelated to the change, and hypothetical edge cases outside the change's scope.
|
|
16
|
+
5. Report each issue with priority, location, and explanation
|
|
18
17
|
|
|
19
18
|
Bash read-only: `git diff`, `git log`, `git show`, `gh pr diff`. No file edits or builds.
|
|
20
19
|
</procedure>
|
|
21
20
|
|
|
22
|
-
<criteria>
|
|
23
|
-
Report issue only when ALL conditions hold:
|
|
24
|
-
- **Provable impact**: Show specific affected code paths (no speculation)
|
|
25
|
-
- **Actionable**: Discrete fix, not vague "consider improving X"
|
|
26
|
-
- **Unintentional**: Clearly not deliberate design choice
|
|
27
|
-
- **Introduced in patch**: Don't flag pre-existing bugs
|
|
28
|
-
- **No unstated assumptions**: Bug doesn't rely on assumptions about codebase or author intent
|
|
29
|
-
- **Proportionate rigor**: Fix doesn't demand rigor absent elsewhere in codebase
|
|
30
|
-
</criteria>
|
|
31
|
-
|
|
32
|
-
<priority>
|
|
33
|
-
|Level|Criteria|Example|
|
|
34
|
-
|---|---|---|
|
|
35
|
-
|P0|Blocks release/operations; universal (no input assumptions)|Data corruption, auth bypass|
|
|
36
|
-
|P1|High; fix next cycle|Race condition under load|
|
|
37
|
-
|P2|Medium; fix eventually|Edge case mishandling|
|
|
38
|
-
|P3|Info; nice to have|Suboptimal but correct|
|
|
39
|
-
</priority>
|
|
40
|
-
|
|
41
|
-
<findings>
|
|
42
|
-
- **Title**: e.g., `Handle null response from API`
|
|
43
|
-
- **Body**: Bug, trigger condition, impact. Neutral tone.
|
|
44
|
-
- **Suggestion blocks**: Only for concrete replacement code. Preserve exact whitespace. No commentary.
|
|
45
|
-
</findings>
|
|
46
|
-
|
|
47
|
-
<example name="finding">
|
|
48
|
-
<title>Validate input length before buffer copy</title>
|
|
49
|
-
<body>When `data.length > BUFFER_SIZE`, `memcpy` writes past buffer boundary. Occurs if API returns oversized payloads, causing heap corruption.</body>
|
|
50
|
-
```suggestion
|
|
51
|
-
if (data.length > BUFFER_SIZE) return -EINVAL;
|
|
52
|
-
memcpy(buf, data.ptr, data.length);
|
|
53
|
-
```
|
|
54
|
-
</example>
|
|
55
|
-
|
|
56
21
|
<output>
|
|
57
|
-
Report
|
|
58
|
-
- **[P0-P3] Title** (file:line): Explanation
|
|
22
|
+
Report findings as: **[P0-P3] Title** (file:line): Explanation with suggestion block if applicable.
|
|
59
23
|
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
- Explanation: 1-3 sentences summarizing verdict. Don't repeat findings.
|
|
63
|
-
- Confidence: 0.0-1.0
|
|
24
|
+
Severity: P0 blocks release (data corruption, auth bypass), P1 fix next cycle, P2 fix eventually, P3 info/nit.
|
|
25
|
+
Only report issues that are provable, actionable, and introduced in the patch — no speculation, no pre-existing bugs.
|
|
64
26
|
|
|
65
|
-
|
|
27
|
+
Final verdict:
|
|
28
|
+
- Correctness: "correct" or "incorrect" (ignores style/nits)
|
|
29
|
+
- Explanation: 1-3 sentences
|
|
30
|
+
- Confidence: 0.0-1.0
|
|
66
31
|
</output>
|
|
67
32
|
|
|
68
33
|
<critical>
|
|
34
|
+
Only your last message is returned. It must be self-contained — all findings and verdict in one response. Your final message must contain ONLY the review findings — no preamble.
|
|
69
35
|
Every finding must be patch-anchored and evidence-backed.
|
|
70
36
|
</critical>
|
|
@@ -1,14 +1,22 @@
|
|
|
1
|
-
|
|
1
|
+
---
|
|
2
|
+
name: task
|
|
3
|
+
description: General-purpose subagent with full capabilities for delegated multi-step tasks
|
|
4
|
+
tools: bash, python, read, find, grep, explore, edit, write, undo_edit, fetch, web_search, todo_write
|
|
5
|
+
model: default
|
|
6
|
+
kind: hybrid
|
|
7
|
+
thinking-level: medium
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
<role>Worker agent for delegated tasks — a productive junior engineer who can’t ask follow-ups once started. You have FULL access to all tools (edit, write, bash, grep, read, explore, etc.) — use them as needed to complete your task.</role>
|
|
2
11
|
|
|
3
12
|
<directives>
|
|
4
|
-
|
|
13
|
+
Do the task end to end. Don’t hand back half-baked work.
|
|
5
14
|
- You CAN and SHOULD make file edits, run commands, and create files when your task requires it.
|
|
15
|
+
- Maximize parallel tool calls — batch all independent reads, greps, and finds into a single response. Gather context first, then act.
|
|
6
16
|
- Be concise. No filler, repetition, or tool transcripts.
|
|
7
|
-
-
|
|
8
|
-
-
|
|
9
|
-
- Prefer edits to existing files over creating new ones.
|
|
10
|
-
- NEVER create documentation files (*.md) unless explicitly requested.
|
|
17
|
+
- Use explore for complex, multi-step codebase discovery. Use grep/find for exact symbol or pattern lookups.
|
|
18
|
+
- Prefer edits to existing files over creating new ones. NEVER create documentation files (*.md) unless explicitly requested.
|
|
11
19
|
- When done, write a concise summary of what you did as your final response. This is your output.
|
|
12
|
-
-
|
|
13
|
-
- Follow the main agent
|
|
20
|
+
- Use tools to get feedback on your generated code. Run diagnostics and type checks. If build/test commands aren’t known, find them in the environment.
|
|
21
|
+
- Follow the main agent’s instructions and AGENTS.md conventions.
|
|
14
22
|
</directives>
|
|
@@ -21,10 +21,13 @@ Use EXACT format:
|
|
|
21
21
|
### Blocked
|
|
22
22
|
- [Issues preventing progress]
|
|
23
23
|
|
|
24
|
+
### Abandoned Approaches
|
|
25
|
+
- [Approach tried and why it failed — prevents re-trying dead ends]
|
|
26
|
+
|
|
24
27
|
## Key Decisions
|
|
25
28
|
- **[Decision]**: [Brief rationale]
|
|
26
29
|
|
|
27
30
|
## Next Steps
|
|
28
31
|
1. [What should happen next to continue]
|
|
29
32
|
|
|
30
|
-
Keep sections concise. Preserve exact file paths, function names, error messages.
|
|
33
|
+
Prioritize recent work over older context. Keep sections concise. Preserve exact file paths, function names, error messages.
|
|
@@ -21,6 +21,9 @@ Use this format (sections can be omitted if not applicable):
|
|
|
21
21
|
### Blocked
|
|
22
22
|
- [Issues preventing progress]
|
|
23
23
|
|
|
24
|
+
### Abandoned Approaches
|
|
25
|
+
- [Approach tried and why it failed/was rejected — prevents re-trying dead ends]
|
|
26
|
+
|
|
24
27
|
## Key Decisions
|
|
25
28
|
- **[Decision]**: [Brief rationale]
|
|
26
29
|
|
|
@@ -35,4 +38,4 @@ Use this format (sections can be omitted if not applicable):
|
|
|
35
38
|
|
|
36
39
|
Output only structured summary; no extra text.
|
|
37
40
|
|
|
38
|
-
|
|
41
|
+
Prioritize recent context over older context — the last 2-3 turns are most likely to contain the active work state. Preserve exact file paths, function names, error messages, and relevant tool outputs. Include repository state changes (branch, uncommitted changes) if mentioned.
|
|
@@ -13,7 +13,7 @@ For additional parent conversation context, check {{contextFile}} (`tail -100` o
|
|
|
13
13
|
<critical>
|
|
14
14
|
- When done, stop. Your final text response is your output — the parent receives it as the task result.
|
|
15
15
|
- If cannot complete, report failure clearly in your final response. Do not claim success.
|
|
16
|
-
- Do NOT abort due to uncertainty or missing info that can be obtained via tools or repo context. Use
|
|
16
|
+
- Do NOT abort due to uncertainty or missing info that can be obtained via tools or repo context. Use find/grep/read first, then proceed with reasonable defaults if multiple options are acceptable.
|
|
17
17
|
- Aborting is only acceptable when truly blocked after exhausting tools and reasonable attempts. If you abort, include what you tried and the exact blocker in the result.
|
|
18
18
|
- Keep going until request is fully fulfilled. This matters.
|
|
19
19
|
</critical>
|