opencode-agile-agent 1.0.4 → 1.2.1
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/README.md +78 -14
- package/bin/cli.js +180 -254
- package/bin/sync-templates.js +1 -7
- package/bin/validate-templates.js +17 -19
- package/package.json +1 -1
- package/templates/.opencode/ARCHITECTURE.md +94 -64
- package/templates/.opencode/README.md +115 -63
- package/templates/.opencode/agents/archiver.md +45 -0
- package/templates/.opencode/agents/backend-specialist.md +43 -46
- package/templates/.opencode/agents/context-gatherer.md +26 -26
- package/templates/.opencode/agents/debugger.md +45 -45
- package/templates/.opencode/agents/developer.md +54 -45
- package/templates/.opencode/agents/devops-engineer.md +42 -45
- package/templates/.opencode/agents/feature-lead.md +81 -50
- package/templates/.opencode/agents/frontend-specialist.md +44 -46
- package/templates/.opencode/agents/performance-optimizer.md +45 -45
- package/templates/.opencode/agents/pr-reviewer.md +46 -45
- package/templates/.opencode/agents/project-planner.md +41 -45
- package/templates/.opencode/agents/retrospective-writer.md +48 -0
- package/templates/.opencode/agents/security-auditor.md +39 -45
- package/templates/.opencode/agents/system-analyst.md +43 -43
- package/templates/.opencode/agents/test-engineer.md +44 -44
- package/templates/.opencode/bun.lock +18 -0
- package/templates/.opencode/commands/archive.md +15 -0
- package/templates/.opencode/commands/assign-models.md +39 -0
- package/templates/.opencode/commands/brainstorm.md +5 -2
- package/templates/.opencode/commands/check-progress.md +21 -0
- package/templates/.opencode/commands/create.md +8 -3
- package/templates/.opencode/commands/plan.md +7 -2
- package/templates/.opencode/commands/reframe.md +17 -0
- package/templates/.opencode/commands/review.md +9 -3
- package/templates/.opencode/commands/rubber-duck.md +14 -0
- package/templates/.opencode/commands/status.md +3 -0
- package/templates/.opencode/commands/test.md +8 -3
- package/templates/.opencode/config.template.json +160 -20
- package/templates/.opencode/package-lock.json +115 -0
- package/templates/.opencode/package.json +6 -0
- package/templates/.opencode/plugins/session-artifacts.ts +611 -0
- package/templates/.opencode/skills/archive-writing/SKILL.md +36 -0
- package/templates/.opencode/skills/artifact-discipline/SKILL.md +30 -0
- package/templates/.opencode/skills/clarify-first/SKILL.md +34 -0
- package/templates/.opencode/skills/context-archive/SKILL.md +10 -26
- package/templates/.opencode/skills/context-gathering/SKILL.md +2 -0
- package/templates/.opencode/skills/intelligent-routing/SKILL.md +10 -2
- package/templates/.opencode/skills/plan-writing/SKILL.md +5 -5
- package/templates/.opencode/templates/brief.template.md +25 -0
- package/templates/.opencode/templates/notes.template.md +13 -0
- package/templates/.opencode/templates/review-summary.template.md +6 -0
- package/templates/.opencode/templates/session-summary.template.md +7 -0
- package/templates/.opencode/templates/spec.template.md +17 -0
- package/templates/.opencode/templates/status.template.yaml +14 -0
- package/templates/.opencode/templates/task.template.md +5 -0
- package/templates/opencode.json +12 -0
- package/templates/.opencode/agents/api-designer.md +0 -45
- package/templates/.opencode/agents/code-archaeologist.md +0 -45
- package/templates/.opencode/agents/database-architect.md +0 -45
- package/templates/.opencode/agents/documentation-writer.md +0 -45
- package/templates/.opencode/agents/explorer-agent.md +0 -55
- package/templates/.opencode/agents/game-developer.md +0 -45
- package/templates/.opencode/agents/mobile-developer.md +0 -45
- package/templates/.opencode/agents/orchestrator.md +0 -48
- package/templates/.opencode/agents/penetration-tester.md +0 -46
- package/templates/.opencode/agents/product-manager.md +0 -46
- package/templates/.opencode/agents/qa-automation-engineer.md +0 -46
- package/templates/.opencode/agents/seo-specialist.md +0 -45
- package/templates/.opencode/archive/README.md +0 -24
- package/templates/.opencode/commands/debug.md +0 -10
- package/templates/.opencode/skills/parallel-agents/SKILL.md +0 -38
- package/templates/.opencode/skills/redteam-validation/SKILL.md +0 -33
- package/templates/AGENTS.template.md +0 -300
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Recommend and assign the best available models to each agent.
|
|
3
|
+
agent: feature-lead
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Ask the user to paste the output of `opencode models` before doing any mapping work. If they have not provided it yet, stop and ask for it.
|
|
7
|
+
|
|
8
|
+
After the user provides the model list:
|
|
9
|
+
|
|
10
|
+
1. Inspect `.opencode/agents/*.md` plus the active OpenCode config file.
|
|
11
|
+
2. Prefer updating `opencode.json` when it exists. If missing, create `opencode.json` at the project root.
|
|
12
|
+
3. Parse the available models into practical tiers based on reasoning strength, context/token capacity, latency/cost, and likely tool reliability.
|
|
13
|
+
4. Score each agent by:
|
|
14
|
+
- reasoning depth
|
|
15
|
+
- need for long context/token budget
|
|
16
|
+
- risk if the agent makes a bad call
|
|
17
|
+
- creativity/exploration needs
|
|
18
|
+
- strictness implied by the current `temperature` and `top_p`
|
|
19
|
+
5. Produce a proposed mapping for every agent, sorted from highest-priority model assignments to lowest-priority assignments.
|
|
20
|
+
6. For each assignment, explain why that model fits the agent better than lighter or heavier options.
|
|
21
|
+
|
|
22
|
+
Guidance for matching:
|
|
23
|
+
|
|
24
|
+
- Use the strongest reasoning models for orchestration, architecture, debugging, security, and high-risk review agents when those models are available.
|
|
25
|
+
- Use balanced mid-tier models for implementation specialists and domain experts that need solid reasoning but do not justify the most expensive model every time.
|
|
26
|
+
- Use lightweight/fast models for low-risk scouting, inventory, or support work when quality tradeoffs are acceptable.
|
|
27
|
+
- Treat lower `temperature` and lower `top_p` as a signal that the agent benefits from stable, deterministic behavior. Do not change those values unless the user asks.
|
|
28
|
+
- Treat higher-context models as more valuable for agents that synthesize many files, plans, or reviews.
|
|
29
|
+
- If two models are close, prefer the cheaper/faster one for lower-impact agents.
|
|
30
|
+
- If the user only provided a small model list, reuse models where needed and call out the tradeoff explicitly.
|
|
31
|
+
|
|
32
|
+
Before editing anything, ask for confirmation on the proposed mapping.
|
|
33
|
+
|
|
34
|
+
After approval:
|
|
35
|
+
|
|
36
|
+
1. Update `opencode.json`.
|
|
37
|
+
2. Preserve existing agent settings unless they conflict with the approved model mapping.
|
|
38
|
+
3. Add missing agent entries when needed, using the agent frontmatter defaults for `mode`, `temperature`, `top_p`, and `steps`, then set the approved `model`.
|
|
39
|
+
4. Return a concise summary of which file was updated, which agents changed, and any agents that still share a fallback model because the provided model catalog was too small.
|
|
@@ -3,8 +3,11 @@ description: Explore options in a back-and-forth discussion before planning.
|
|
|
3
3
|
agent: feature-lead
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
+
Call `session_artifact_current` first.
|
|
7
|
+
If there is no active feature yet, choose a short feature slug and treat this stage as candidate state only.
|
|
6
8
|
Start with @context-gatherer.
|
|
7
|
-
Use @product-manager to frame the problem.
|
|
8
9
|
Use @project-planner and @explorer-agent to gather constraints and options.
|
|
9
10
|
Ask the involved agents to present the best default, the tradeoffs, and the open questions.
|
|
10
|
-
|
|
11
|
+
Do not create the full planning bundle here unless the user explicitly asks for it.
|
|
12
|
+
Before finishing, call `session_artifact_update` to record the recommended path, open questions, next step, and stage `brainstorm`.
|
|
13
|
+
Return one recommended path, the key tradeoffs, the open questions, and the clearest next step into `plan`.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Check current progress, changed files, remaining work, and the best next step from status.yaml plus git-aware evidence.
|
|
3
|
+
agent: feature-lead
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Start with @context-gatherer.
|
|
7
|
+
Call `session_artifact_current` first.
|
|
8
|
+
Read `status.yaml` first as the live execution source of truth.
|
|
9
|
+
Treat `status.yaml.status` as one of: `brainstorm`, `planning`, `implementation`, `verification`, `review`, `done`, `blocked`.
|
|
10
|
+
Then inspect the current working state and reconcile `status.yaml` with git-aware evidence: status, diff summary, staged vs unstaged changes, and recent commits if useful.
|
|
11
|
+
If `status.yaml` and repo evidence disagree, call out the mismatch explicitly.
|
|
12
|
+
Summarize the work in this format:
|
|
13
|
+
- Current status
|
|
14
|
+
- Done
|
|
15
|
+
- Changed
|
|
16
|
+
- In progress
|
|
17
|
+
- Remaining
|
|
18
|
+
- Risks or blockers
|
|
19
|
+
- Next best step
|
|
20
|
+
Keep it concrete and decision-ready.
|
|
21
|
+
Do not give a generic status report; tie each point to visible evidence in the repo.
|
|
@@ -3,9 +3,14 @@ description: Build new features, components, or project slices with a spec-drive
|
|
|
3
3
|
agent: feature-lead
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
+
Call `session_artifact_current` first.
|
|
7
|
+
Call `session_artifact_handoff` for `developer` before delegating.
|
|
8
|
+
Call `session_artifact_acceptance_criteria` when the implementation target needs a tight contract.
|
|
6
9
|
Start with @context-gatherer.
|
|
7
|
-
|
|
10
|
+
Read the approved compact context bundle first: brief.md, spec.md, task.md, notes.md, and status.yaml.
|
|
11
|
+
If the bundle is missing or materially unclear, stop and use `plan` before implementation.
|
|
8
12
|
Hand implementation to @developer.
|
|
9
|
-
|
|
13
|
+
Call `session_artifact_update` to set stage `implementation`, the current owner, files of interest, and next step.
|
|
14
|
+
If the work touches sensitive paths, add @security-auditor before approval.
|
|
10
15
|
Close the loop with @test-engineer and @pr-reviewer.
|
|
11
|
-
|
|
16
|
+
If the work is approved, use the `archive` command to preserve the finished bundle.
|
|
@@ -3,7 +3,12 @@ description: Create structured task breakdowns and spec artifacts.
|
|
|
3
3
|
agent: feature-lead
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
+
Call `session_artifact_current` first.
|
|
7
|
+
Promote the active feature into planning state if it is still in brainstorm state.
|
|
6
8
|
Start with @context-gatherer.
|
|
9
|
+
Call `session_artifact_handoff` for `system-analyst` before delegating.
|
|
7
10
|
Use @project-planner to break the work into atomic tasks.
|
|
8
|
-
Use @system-analyst to write
|
|
9
|
-
|
|
11
|
+
Use @system-analyst to write brief.md, spec.md, task.md, notes.md, and status.yaml.
|
|
12
|
+
Call `session_artifact_update` to set stage `planning`, owner, handoff target, approved scope, risks, and next step.
|
|
13
|
+
If the `submit_plan` tool is available, call it with the final plan markdown before returning. If the plan is denied, incorporate the feedback and resubmit.
|
|
14
|
+
Return the ordered plan, dependencies, exit criteria, and the approval result (approved/changes requested).
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Reset the framing when the output is off-target, unclear, or stuck repeating the same mistake.
|
|
3
|
+
agent: feature-lead
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Do not jump straight into another fix.
|
|
7
|
+
First restate what you think the user actually wants in plain language.
|
|
8
|
+
Then explain what seems mismatched between expected and actual output.
|
|
9
|
+
List:
|
|
10
|
+
- current understanding
|
|
11
|
+
- likely misunderstanding
|
|
12
|
+
- what should be kept
|
|
13
|
+
- what should be discarded
|
|
14
|
+
- 2-3 better interpretations or directions
|
|
15
|
+
- the clearest next step
|
|
16
|
+
If the request is still ambiguous, ask short targeted clarifying questions.
|
|
17
|
+
Prefer correcting the frame over repeating the same implementation pattern.
|
|
@@ -3,9 +3,15 @@ description: Review code against the spec, standards, and quality gates.
|
|
|
3
3
|
agent: feature-lead
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
+
Call `session_artifact_current` first.
|
|
7
|
+
Call `session_artifact_handoff` for `pr-reviewer` before delegating.
|
|
8
|
+
Call `session_artifact_review_packet` before review so the reviewer can compare code against the approved scope without reloading the full bundle.
|
|
9
|
+
Call `session_artifact_repo_delta` before review and flag any mismatch between artifact state and git state.
|
|
6
10
|
Start with @context-gatherer.
|
|
7
|
-
|
|
8
|
-
|
|
11
|
+
Read the approved bundle and current `status.yaml` first.
|
|
12
|
+
If the change touches sensitive paths, insert @security-auditor first.
|
|
13
|
+
Hand the change to @pr-reviewer to compare implementation against the approved spec, task scope, and quality gates.
|
|
9
14
|
If changes are requested, loop back to @developer.
|
|
10
|
-
|
|
15
|
+
Call `session_artifact_update` to set stage `review` and record the review outcome, next owner, and next step.
|
|
16
|
+
If the change is approved, recommend the `archive` command as the next step.
|
|
11
17
|
Return APPROVED or CHANGES REQUESTED with actionable feedback.
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Think out loud, challenge assumptions, and isolate the real problem before planning or editing.
|
|
3
|
+
agent: feature-lead
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Start with @context-gatherer only if current project state matters.
|
|
7
|
+
Use a rubber-duck style conversation before proposing changes.
|
|
8
|
+
First restate the problem in plain language.
|
|
9
|
+
Then list the current facts, assumptions, unknowns, and contradictions.
|
|
10
|
+
Ask short clarifying questions if needed.
|
|
11
|
+
Generate 2-4 plausible explanations for why the issue or request is still unclear or unresolved.
|
|
12
|
+
For each explanation, give the best next check.
|
|
13
|
+
Do not rush into implementation.
|
|
14
|
+
Return the most likely current understanding, the key uncertainty, and the next best step.
|
|
@@ -3,7 +3,10 @@ description: Check project health, docs, and operating readiness.
|
|
|
3
3
|
agent: feature-lead
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
+
Call `session_artifact_current` first.
|
|
7
|
+
Call `session_artifact_repo_delta` before summarizing status.
|
|
6
8
|
Start with @context-gatherer.
|
|
7
9
|
Use @explorer-agent to map the repo and conventions.
|
|
8
10
|
Use @test-engineer and @devops-engineer when quality signals are needed.
|
|
11
|
+
Reconcile the artifact state with repo evidence. If they disagree, call out the mismatch explicitly.
|
|
9
12
|
Summarize the health, risks, missing docs, and next step.
|
|
@@ -3,8 +3,13 @@ description: Run and generate tests for the codebase.
|
|
|
3
3
|
agent: feature-lead
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
+
Call `session_artifact_current` first.
|
|
7
|
+
Call `session_artifact_handoff` for `test-engineer` before delegating.
|
|
8
|
+
Call `session_artifact_changed_files` and `session_artifact_acceptance_criteria` before choosing test scope.
|
|
6
9
|
Start with @context-gatherer.
|
|
7
|
-
|
|
8
|
-
Use @
|
|
10
|
+
Read the approved bundle and current `status.yaml` first.
|
|
11
|
+
Use @test-engineer to verify the acceptance criteria, changed behavior, and highest-risk nearby paths.
|
|
12
|
+
Load the `cross-model-regression` skill when the user wants a multi-agent regression sweep or cross-model verification.
|
|
9
13
|
If a bug surfaces, hand the failing case to @developer.
|
|
10
|
-
|
|
14
|
+
Call `session_artifact_update` to set stage `verification`, capture verified scope, failing paths, and the next verification step.
|
|
15
|
+
Return what was verified, any coverage gaps, failing paths, and the next verification step.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"$schema": "https://
|
|
2
|
+
"$schema": "https://opencode.ai/config.json",
|
|
3
3
|
"version": "1.0.0",
|
|
4
4
|
"project": {
|
|
5
5
|
"name": "Your Project Name",
|
|
@@ -8,54 +8,192 @@
|
|
|
8
8
|
"language": "typescript|javascript",
|
|
9
9
|
"styling": "tailwind|css-modules|styled-components|scss|other"
|
|
10
10
|
},
|
|
11
|
-
"
|
|
12
|
-
"
|
|
11
|
+
"agent": {
|
|
12
|
+
"feature-lead": {
|
|
13
13
|
"enabled": true,
|
|
14
14
|
"model": "primary",
|
|
15
|
-
"mode": "primary"
|
|
15
|
+
"mode": "primary",
|
|
16
|
+
"temperature": 0.3,
|
|
17
|
+
"top_p": 0.9,
|
|
18
|
+
"steps": 50,
|
|
19
|
+
"permission": {
|
|
20
|
+
"task": {
|
|
21
|
+
"*": "allow",
|
|
22
|
+
"security-auditor": "ask"
|
|
23
|
+
}
|
|
24
|
+
}
|
|
16
25
|
},
|
|
17
|
-
"
|
|
26
|
+
"system-analyst": {
|
|
18
27
|
"enabled": true,
|
|
19
|
-
"model": "opencode-go/kimi-k2.5",
|
|
20
28
|
"mode": "subagent",
|
|
29
|
+
"temperature": 0.1,
|
|
30
|
+
"top_p": 0.85,
|
|
31
|
+
"steps": 30,
|
|
32
|
+
"permission": {
|
|
33
|
+
"task": {
|
|
34
|
+
"*": "deny",
|
|
35
|
+
"explorer-agent": "allow",
|
|
36
|
+
"context-gatherer": "allow"
|
|
37
|
+
}
|
|
38
|
+
},
|
|
21
39
|
"tools": {
|
|
22
40
|
"write": true,
|
|
23
41
|
"edit": true,
|
|
24
42
|
"bash": false
|
|
25
43
|
}
|
|
26
44
|
},
|
|
45
|
+
"context-gatherer": {
|
|
46
|
+
"enabled": true,
|
|
47
|
+
"mode": "subagent",
|
|
48
|
+
"temperature": 0.1,
|
|
49
|
+
"top_p": 0.8,
|
|
50
|
+
"steps": 20
|
|
51
|
+
},
|
|
52
|
+
"project-planner": {
|
|
53
|
+
"enabled": true,
|
|
54
|
+
"mode": "subagent",
|
|
55
|
+
"temperature": 0.2,
|
|
56
|
+
"top_p": 0.85,
|
|
57
|
+
"steps": 35
|
|
58
|
+
},
|
|
59
|
+
"explorer-agent": {
|
|
60
|
+
"enabled": true,
|
|
61
|
+
"mode": "subagent",
|
|
62
|
+
"temperature": 0.1,
|
|
63
|
+
"top_p": 0.75,
|
|
64
|
+
"steps": 25
|
|
65
|
+
},
|
|
66
|
+
"archiver": {
|
|
67
|
+
"enabled": true,
|
|
68
|
+
"mode": "subagent",
|
|
69
|
+
"temperature": 0.1,
|
|
70
|
+
"top_p": 0.82,
|
|
71
|
+
"steps": 30
|
|
72
|
+
},
|
|
27
73
|
"developer": {
|
|
28
74
|
"enabled": true,
|
|
29
|
-
"model": "github-copilot/gpt-5.1-codex-mini",
|
|
30
75
|
"mode": "subagent",
|
|
76
|
+
"temperature": 0.2,
|
|
77
|
+
"top_p": 0.9,
|
|
78
|
+
"steps": 100,
|
|
79
|
+
"permission": {
|
|
80
|
+
"task": {
|
|
81
|
+
"*": "ask",
|
|
82
|
+
"pr-reviewer": "allow",
|
|
83
|
+
"test-engineer": "allow"
|
|
84
|
+
}
|
|
85
|
+
},
|
|
31
86
|
"tools": {
|
|
32
87
|
"write": true,
|
|
33
88
|
"edit": true,
|
|
34
89
|
"bash": true
|
|
35
90
|
}
|
|
36
91
|
},
|
|
37
|
-
"
|
|
92
|
+
"backend-specialist": {
|
|
38
93
|
"enabled": true,
|
|
39
|
-
"model": "github-copilot/claude-haiku-4.5",
|
|
40
94
|
"mode": "subagent",
|
|
95
|
+
"temperature": 0.25,
|
|
96
|
+
"top_p": 0.9,
|
|
97
|
+
"steps": 80
|
|
98
|
+
},
|
|
99
|
+
"frontend-specialist": {
|
|
100
|
+
"enabled": true,
|
|
101
|
+
"mode": "subagent",
|
|
102
|
+
"temperature": 0.25,
|
|
103
|
+
"top_p": 0.9,
|
|
104
|
+
"steps": 70
|
|
105
|
+
},
|
|
106
|
+
"devops-engineer": {
|
|
107
|
+
"enabled": true,
|
|
108
|
+
"mode": "subagent",
|
|
109
|
+
"temperature": 0.2,
|
|
110
|
+
"top_p": 0.85,
|
|
111
|
+
"steps": 50
|
|
112
|
+
},
|
|
113
|
+
"test-engineer": {
|
|
114
|
+
"enabled": true,
|
|
115
|
+
"mode": "subagent",
|
|
116
|
+
"temperature": 0.15,
|
|
117
|
+
"top_p": 0.82,
|
|
118
|
+
"steps": 60,
|
|
119
|
+
"permission": {
|
|
120
|
+
"task": {
|
|
121
|
+
"*": "deny"
|
|
122
|
+
}
|
|
123
|
+
},
|
|
124
|
+
"tools": {
|
|
125
|
+
"write": true,
|
|
126
|
+
"edit": true,
|
|
127
|
+
"bash": true
|
|
128
|
+
}
|
|
129
|
+
},
|
|
130
|
+
"pr-reviewer": {
|
|
131
|
+
"enabled": true,
|
|
132
|
+
"mode": "subagent",
|
|
133
|
+
"temperature": 0.1,
|
|
134
|
+
"top_p": 0.8,
|
|
135
|
+
"steps": 40,
|
|
136
|
+
"permission": {
|
|
137
|
+
"task": {
|
|
138
|
+
"*": "deny"
|
|
139
|
+
}
|
|
140
|
+
},
|
|
41
141
|
"tools": {
|
|
42
142
|
"write": false,
|
|
43
143
|
"edit": false,
|
|
44
144
|
"bash": false
|
|
45
145
|
}
|
|
146
|
+
},
|
|
147
|
+
"security-auditor": {
|
|
148
|
+
"enabled": true,
|
|
149
|
+
"mode": "subagent",
|
|
150
|
+
"temperature": 0.1,
|
|
151
|
+
"top_p": 0.85,
|
|
152
|
+
"steps": 45
|
|
153
|
+
},
|
|
154
|
+
"debugger": {
|
|
155
|
+
"enabled": true,
|
|
156
|
+
"model": "primary",
|
|
157
|
+
"mode": "subagent",
|
|
158
|
+
"temperature": 0.15,
|
|
159
|
+
"top_p": 0.85,
|
|
160
|
+
"steps": 60,
|
|
161
|
+
"permission": {
|
|
162
|
+
"task": {
|
|
163
|
+
"*": "deny"
|
|
164
|
+
}
|
|
165
|
+
},
|
|
166
|
+
"tools": {
|
|
167
|
+
"write": true,
|
|
168
|
+
"edit": true,
|
|
169
|
+
"bash": true
|
|
170
|
+
}
|
|
171
|
+
},
|
|
172
|
+
"performance-optimizer": {
|
|
173
|
+
"enabled": true,
|
|
174
|
+
"mode": "subagent",
|
|
175
|
+
"temperature": 0.2,
|
|
176
|
+
"top_p": 0.88,
|
|
177
|
+
"steps": 60,
|
|
178
|
+
"permission": {
|
|
179
|
+
"task": {
|
|
180
|
+
"*": "deny"
|
|
181
|
+
}
|
|
182
|
+
},
|
|
183
|
+
"tools": {
|
|
184
|
+
"write": true,
|
|
185
|
+
"edit": true,
|
|
186
|
+
"bash": true
|
|
187
|
+
}
|
|
46
188
|
}
|
|
47
189
|
},
|
|
48
|
-
"ralph": {
|
|
49
|
-
"enabled": true,
|
|
50
|
-
"defaultMaxIterations": 10,
|
|
51
|
-
"defaultTimeoutMs": 300000,
|
|
52
|
-
"parallelDefault": false,
|
|
53
|
-
"autoVerify": true,
|
|
54
|
-
"exportCheckpoints": true,
|
|
55
|
-
"validatePrd": true,
|
|
56
|
-
"detectEdgeCases": true
|
|
57
|
-
},
|
|
58
190
|
"plugins": {
|
|
191
|
+
"sessionArtifacts": {
|
|
192
|
+
"enabled": true,
|
|
193
|
+
"candidateStage": "brainstorm",
|
|
194
|
+
"archiveCommand": "archive",
|
|
195
|
+
"handoffTool": "session_artifact_handoff"
|
|
196
|
+
},
|
|
59
197
|
"lintFormat": {
|
|
60
198
|
"enabled": true,
|
|
61
199
|
"runOnEdit": true,
|
|
@@ -117,9 +255,11 @@
|
|
|
117
255
|
"agents": ".opencode/agents",
|
|
118
256
|
"skills": ".opencode/skills",
|
|
119
257
|
"plugins": ".opencode/plugins",
|
|
258
|
+
"artifacts": ".opencode/artifacts",
|
|
120
259
|
"templates": ".opencode/templates",
|
|
121
260
|
"context": "context",
|
|
122
|
-
"output": "output"
|
|
261
|
+
"output": "output",
|
|
262
|
+
"checkpoints": ".opencode/checkpoints"
|
|
123
263
|
},
|
|
124
264
|
"logging": {
|
|
125
265
|
"level": "info",
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": ".opencode",
|
|
3
|
+
"lockfileVersion": 3,
|
|
4
|
+
"requires": true,
|
|
5
|
+
"packages": {
|
|
6
|
+
"": {
|
|
7
|
+
"dependencies": {
|
|
8
|
+
"@opencode-ai/plugin": "1.4.3"
|
|
9
|
+
}
|
|
10
|
+
},
|
|
11
|
+
"node_modules/@opencode-ai/plugin": {
|
|
12
|
+
"version": "1.4.3",
|
|
13
|
+
"resolved": "https://registry.npmjs.org/@opencode-ai/plugin/-/plugin-1.4.3.tgz",
|
|
14
|
+
"integrity": "sha512-Ob/3tVSIeuMRJBr2O23RtrnC5djRe01Lglx+TwGEmjrH9yDBJ2tftegYLnNEjRoMuzITgq9LD8168p4pzv+U/A==",
|
|
15
|
+
"license": "MIT",
|
|
16
|
+
"dependencies": {
|
|
17
|
+
"@opencode-ai/sdk": "1.4.3",
|
|
18
|
+
"zod": "4.1.8"
|
|
19
|
+
},
|
|
20
|
+
"peerDependencies": {
|
|
21
|
+
"@opentui/core": ">=0.1.97",
|
|
22
|
+
"@opentui/solid": ">=0.1.97"
|
|
23
|
+
},
|
|
24
|
+
"peerDependenciesMeta": {
|
|
25
|
+
"@opentui/core": {
|
|
26
|
+
"optional": true
|
|
27
|
+
},
|
|
28
|
+
"@opentui/solid": {
|
|
29
|
+
"optional": true
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
"node_modules/@opencode-ai/sdk": {
|
|
34
|
+
"version": "1.4.3",
|
|
35
|
+
"resolved": "https://registry.npmjs.org/@opencode-ai/sdk/-/sdk-1.4.3.tgz",
|
|
36
|
+
"integrity": "sha512-X0CAVbwoGAjTY2iecpWkx2B+GAa2jSaQKYpJ+xILopeF/OGKZUN15mjqci+L7cEuwLHV5wk3x2TStUOVCa5p0A==",
|
|
37
|
+
"license": "MIT",
|
|
38
|
+
"dependencies": {
|
|
39
|
+
"cross-spawn": "7.0.6"
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
"node_modules/cross-spawn": {
|
|
43
|
+
"version": "7.0.6",
|
|
44
|
+
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
|
|
45
|
+
"integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==",
|
|
46
|
+
"license": "MIT",
|
|
47
|
+
"dependencies": {
|
|
48
|
+
"path-key": "^3.1.0",
|
|
49
|
+
"shebang-command": "^2.0.0",
|
|
50
|
+
"which": "^2.0.1"
|
|
51
|
+
},
|
|
52
|
+
"engines": {
|
|
53
|
+
"node": ">= 8"
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
"node_modules/isexe": {
|
|
57
|
+
"version": "2.0.0",
|
|
58
|
+
"resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
|
|
59
|
+
"integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
|
|
60
|
+
"license": "ISC"
|
|
61
|
+
},
|
|
62
|
+
"node_modules/path-key": {
|
|
63
|
+
"version": "3.1.1",
|
|
64
|
+
"resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
|
|
65
|
+
"integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
|
|
66
|
+
"license": "MIT",
|
|
67
|
+
"engines": {
|
|
68
|
+
"node": ">=8"
|
|
69
|
+
}
|
|
70
|
+
},
|
|
71
|
+
"node_modules/shebang-command": {
|
|
72
|
+
"version": "2.0.0",
|
|
73
|
+
"resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
|
|
74
|
+
"integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
|
|
75
|
+
"license": "MIT",
|
|
76
|
+
"dependencies": {
|
|
77
|
+
"shebang-regex": "^3.0.0"
|
|
78
|
+
},
|
|
79
|
+
"engines": {
|
|
80
|
+
"node": ">=8"
|
|
81
|
+
}
|
|
82
|
+
},
|
|
83
|
+
"node_modules/shebang-regex": {
|
|
84
|
+
"version": "3.0.0",
|
|
85
|
+
"resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
|
|
86
|
+
"integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
|
|
87
|
+
"license": "MIT",
|
|
88
|
+
"engines": {
|
|
89
|
+
"node": ">=8"
|
|
90
|
+
}
|
|
91
|
+
},
|
|
92
|
+
"node_modules/which": {
|
|
93
|
+
"version": "2.0.2",
|
|
94
|
+
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
|
|
95
|
+
"integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
|
|
96
|
+
"license": "ISC",
|
|
97
|
+
"dependencies": {
|
|
98
|
+
"isexe": "^2.0.0"
|
|
99
|
+
},
|
|
100
|
+
"bin": {
|
|
101
|
+
"node-which": "bin/node-which"
|
|
102
|
+
},
|
|
103
|
+
"engines": {
|
|
104
|
+
"node": ">= 8"
|
|
105
|
+
}
|
|
106
|
+
},
|
|
107
|
+
"node_modules/zod": {
|
|
108
|
+
"version": "4.1.8",
|
|
109
|
+
"license": "MIT",
|
|
110
|
+
"funding": {
|
|
111
|
+
"url": "https://github.com/sponsors/colinhacks"
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
}
|