opencode-codeops 1.8.1 → 1.10.0
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 +31 -0
- package/README.md +18 -0
- package/_shared/quality-profile.md +9 -0
- package/_shared/reasoning-effort.md +135 -0
- package/_shared/workspace-hygiene.md +53 -0
- package/agent-templates/codebase-scout.md +6 -0
- package/agent-templates/concurrency-auditor.md +7 -0
- package/agent-templates/design-challenger.md +6 -0
- package/agent-templates/domain-specialist-executor.md +6 -0
- package/agent-templates/domain-specialist-reviewer.md +6 -0
- package/agent-templates/financial-integrity-auditor.md +7 -0
- package/agent-templates/perf-auditor.md +6 -0
- package/agent-templates/phase-reviewer.md +6 -0
- package/agent-templates/plan-task-executor-opus.md +6 -0
- package/agent-templates/plan-task-executor.md +6 -0
- package/agent-templates/preflight-auditor.md +6 -0
- package/agent-templates/security-auditor.md +6 -0
- package/agent-templates/semantics-reviewer.md +7 -0
- package/agent-templates/spec-test-author.md +6 -0
- package/agents/concurrency-auditor.md +7 -0
- package/agents/correctness-reviewer.md +6 -0
- package/agents/demanding-executor.md +6 -0
- package/agents/design-challenger.md +6 -0
- package/agents/executor.md +6 -0
- package/agents/explorer.md +6 -0
- package/agents/financial-integrity-auditor.md +7 -0
- package/agents/performance-auditor.md +6 -0
- package/agents/preflight-auditor.md +6 -0
- package/agents/security-auditor.md +6 -0
- package/agents/semantics-reviewer.md +7 -0
- package/agents/spec-test-author.md +6 -0
- package/bin/lib/reasoning-effort.d.mts +85 -0
- package/bin/lib/reasoning-effort.mjs +331 -0
- package/bin/lib/tmp-hygiene.d.mts +38 -0
- package/bin/lib/tmp-hygiene.mjs +180 -0
- package/package.json +1 -1
- package/plugin/index.ts +146 -3
- package/scripts/__pycache__/install_agents.cpython-312.pyc +0 -0
- package/scripts/codeops_effort.py +216 -0
- package/scripts/fixtures/catalog-executor.golden.md +6 -0
- package/skills/analyze-project/SKILL.md +8 -0
- package/skills/clean-comments/SKILL.md +8 -0
- package/skills/exec-plan/SKILL.md +21 -0
- package/skills/exec-plan/execution-protocol.md +52 -7
- package/skills/git-commit/SKILL.md +11 -2
- package/skills/github-issues/SKILL.md +8 -0
- package/skills/grill-me/SKILL.md +18 -0
- package/skills/make-plan/SKILL.md +25 -0
- package/skills/make-plan/templates.md +2 -0
- package/skills/make-requirements/SKILL.md +18 -0
- package/skills/outcome-review/SKILL.md +8 -0
- package/skills/preflight/SKILL.md +18 -0
- package/skills/retro-requirements/SKILL.md +18 -0
- package/skills/roadmap/SKILL.md +8 -0
- package/skills/setup-codeops/SKILL.md +8 -0
- package/skills/setup-routing/SKILL.md +10 -0
- package/skills/setup-routing/routing.md +16 -1
- package/skills/techdocs/SKILL.md +8 -0
- package/skills/upgrade-plan/SKILL.md +18 -0
- package/standards/coding-standards-full.md +19 -0
- package/standards/coding-standards.md +6 -0
|
@@ -24,6 +24,16 @@ If `$ARGUMENTS` contains exactly one exact standalone `--explore-scope` token be
|
|
|
24
24
|
do not report or plan optional additions. Exploration may propose `SE-*` items but
|
|
25
25
|
never accepts them; only the user may choose `Keep`.
|
|
26
26
|
|
|
27
|
+
## Auto-effort option
|
|
28
|
+
|
|
29
|
+
If `$ARGUMENTS` contains exactly one exact standalone `--auto-effort` or `--auto-effort=<level>`
|
|
30
|
+
token before the first `--` sentinel, remove it before resolving targets, paths, or modes; zero
|
|
31
|
+
occurrences means this skill's recommended level (`high`) is printed as a suggestion only, more
|
|
32
|
+
than one or an invalid level is an argument error; announce
|
|
33
|
+
`Auto-effort active — reasoning <level> applied for this run`; then read and apply
|
|
34
|
+
[../../_shared/reasoning-effort.md](../../_shared/reasoning-effort.md) §Auto-effort option. The
|
|
35
|
+
run clears the level before its final summary.
|
|
36
|
+
|
|
27
37
|
## Plan readiness proof
|
|
28
38
|
|
|
29
39
|
A plan is not ready merely because its documents exist. Before presenting it as executable,
|
|
@@ -106,6 +116,7 @@ Mini-plan shape:
|
|
|
106
116
|
|
|
107
117
|
> **Type**: Task (lightweight) · **Feature**: search · **CodeOps Artifact Schema**: 1
|
|
108
118
|
> **Progress**: 0/3 tasks (0%)
|
|
119
|
+
> **Reasoning**: medium — bounded UI change reusing existing patterns
|
|
109
120
|
|
|
110
121
|
## Objective
|
|
111
122
|
Debounce the search box to 300ms to cut redundant queries.
|
|
@@ -121,6 +132,12 @@ shared debounce subsystem.
|
|
|
121
132
|
**Verify**: [project verify command]
|
|
122
133
|
```
|
|
123
134
|
|
|
135
|
+
Every phase and every task mini-plan carries the same advisory
|
|
136
|
+
`> **Reasoning**: <level> — <reason>` line. Derive the level from the signals the plan already
|
|
137
|
+
records, using [../../_shared/reasoning-effort.md](../../_shared/reasoning-effort.md) §Plan
|
|
138
|
+
suggestion derivation, and keep the reason a short plain-language phrase. The line is a
|
|
139
|
+
suggestion: no gate reads it, deleting it is valid, and its absence means "inherit".
|
|
140
|
+
|
|
124
141
|
Everything below is the **full feature** pipeline; skip it for tasks.
|
|
125
142
|
|
|
126
143
|
## Project configuration
|
|
@@ -282,3 +299,11 @@ See the **roadmap skill** for the full Roadmap Keeper protocol.
|
|
|
282
299
|
- **upgrade-plan skill** — upgrades outdated plans; the gate applies to new decisions only.
|
|
283
300
|
- **techdocs skill** — architecture docs read during Phase 1.2 and updated during execution.
|
|
284
301
|
- For coding, testing, and git standards, follow **your project's coding standards (AGENTS.md)** and use **git-commit skill** / **git-commit skill in push mode** for commits.
|
|
302
|
+
|
|
303
|
+
---
|
|
304
|
+
|
|
305
|
+
> **Workspace hygiene (non-negotiable):** put every temporary artifact this run creates in
|
|
306
|
+
> `$CODEOPS_TMPDIR` (fallback: the OS temp directory), never in the repository, and delete them
|
|
307
|
+
> all before reporting completion. Never delete user files, versioned artifacts, worktrees, or
|
|
308
|
+
> another session's temporary files. Full rules:
|
|
309
|
+
> [_shared/workspace-hygiene.md](../../_shared/workspace-hygiene.md).
|
|
@@ -458,6 +458,8 @@ task-size criteria in [quality-checklist.md](quality-checklist.md))
|
|
|
458
458
|
> committed, staged, unstaged, and untracked phase-start state)_
|
|
459
459
|
> **Lenses**: [add-on lenses — include this line only when the target repo carries a quality
|
|
460
460
|
> profile; informational: activation stays profile-driven]
|
|
461
|
+
> **Reasoning**: [advisory level — `low`, `medium`, `high`, or `max`, with a one-line reason;
|
|
462
|
+
> derivation in `../../_shared/reasoning-effort.md` §Plan suggestion derivation]
|
|
461
463
|
|
|
462
464
|
### Step 1.1: [Step Objective]
|
|
463
465
|
|
|
@@ -27,6 +27,16 @@ requirements decisions under that policy and propagate its downward-only context
|
|
|
27
27
|
invoked supported children; an unsupported child fails closed. This mode does not grant action permission or scope expansion. **Normal mode:** without the exact token, every material choice
|
|
28
28
|
still requires an explicit user decision; historical delegated records must not infer delegated authority.
|
|
29
29
|
|
|
30
|
+
## Auto-effort option
|
|
31
|
+
|
|
32
|
+
If `$ARGUMENTS` contains exactly one exact standalone `--auto-effort` or `--auto-effort=<level>`
|
|
33
|
+
token before the first `--` sentinel, remove it before resolving targets, paths, or modes; zero
|
|
34
|
+
occurrences means this skill's recommended level (`high`) is printed as a suggestion only, more
|
|
35
|
+
than one or an invalid level is an argument error; announce
|
|
36
|
+
`Auto-effort active — reasoning <level> applied for this run`; then read and apply
|
|
37
|
+
[../../_shared/reasoning-effort.md](../../_shared/reasoning-effort.md) §Auto-effort option. The
|
|
38
|
+
run clears the level before its final summary.
|
|
39
|
+
|
|
30
40
|
Transform a rough project idea into a structured, complete set of formal
|
|
31
41
|
**requirement documents (RDs)**. This skill is upstream of, and independent
|
|
32
42
|
from, the make-plan skill — neither requires the other.
|
|
@@ -268,3 +278,11 @@ comparable systems → key discovery focus is in **`discovery-phases.md`**.
|
|
|
268
278
|
- the upgrade-plan skill — upgrading outdated requirements (upgrade_requirements)
|
|
269
279
|
- the roadmap skill — sync each newly drafted RD to stage `RD Drafted`
|
|
270
280
|
- Read the project's AGENTS.md (or detected project conventions) for project-specific constraints
|
|
281
|
+
|
|
282
|
+
---
|
|
283
|
+
|
|
284
|
+
> **Workspace hygiene (non-negotiable):** put every temporary artifact this run creates in
|
|
285
|
+
> `$CODEOPS_TMPDIR` (fallback: the OS temp directory), never in the repository, and delete them
|
|
286
|
+
> all before reporting completion. Never delete user files, versioned artifacts, worktrees, or
|
|
287
|
+
> another session's temporary files. Full rules:
|
|
288
|
+
> [_shared/workspace-hygiene.md](../../_shared/workspace-hygiene.md).
|
|
@@ -32,3 +32,11 @@ Outcome evidence is opt-in, local, and content-free. Invocation counts are not q
|
|
|
32
32
|
6. Present the smallest change likely to improve the measured outcome and define how to evaluate it.
|
|
33
33
|
|
|
34
34
|
Never upload or quote project content from the outcome store.
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
> **Workspace hygiene (non-negotiable):** put every temporary artifact this run creates in
|
|
39
|
+
> `$CODEOPS_TMPDIR` (fallback: the OS temp directory), never in the repository, and delete them
|
|
40
|
+
> all before reporting completion. Never delete user files, versioned artifacts, worktrees, or
|
|
41
|
+
> another session's temporary files. Full rules:
|
|
42
|
+
> [_shared/workspace-hygiene.md](../../_shared/workspace-hygiene.md).
|
|
@@ -33,6 +33,16 @@ If `$ARGUMENTS` contains exactly one exact standalone `--explore-scope` token be
|
|
|
33
33
|
do not report optional additions as findings or suggestions. Exploration records them
|
|
34
34
|
as separate `SE-*` proposals; finding resolution never chooses `Keep`.
|
|
35
35
|
|
|
36
|
+
## Auto-effort option
|
|
37
|
+
|
|
38
|
+
If `$ARGUMENTS` contains exactly one exact standalone `--auto-effort` or `--auto-effort=<level>`
|
|
39
|
+
token before the first `--` sentinel, remove it before resolving targets, paths, or modes; zero
|
|
40
|
+
occurrences means this skill's recommended level (`high`, or `max` with `--thorough`) is printed
|
|
41
|
+
as a suggestion only, more than one or an invalid level is an argument error; announce
|
|
42
|
+
`Auto-effort active — reasoning <level> applied for this run`; then read and apply
|
|
43
|
+
[../../_shared/reasoning-effort.md](../../_shared/reasoning-effort.md) §Auto-effort option. The
|
|
44
|
+
run clears the level before its final summary.
|
|
45
|
+
|
|
36
46
|
Run a rigorous quality audit of the artifact named in `$ARGUMENTS`, **grounded in the actual
|
|
37
47
|
codebase**. Find every issue, ambiguity, contradiction, gap, and risk; verify every claim and
|
|
38
48
|
assumption against the real code; present each finding with options + a recommendation; iterate
|
|
@@ -308,3 +318,11 @@ checklist. Full safeguards in [report-format.md](report-format.md).
|
|
|
308
318
|
**Standalone:** when used without a follow-up, finish the scan + resolution, present the final
|
|
309
319
|
status, then ask the user what to do next (apply fixes, create a plan, start execution, or review
|
|
310
320
|
specific findings).
|
|
321
|
+
|
|
322
|
+
---
|
|
323
|
+
|
|
324
|
+
> **Workspace hygiene (non-negotiable):** put every temporary artifact this run creates in
|
|
325
|
+
> `$CODEOPS_TMPDIR` (fallback: the OS temp directory), never in the repository, and delete them
|
|
326
|
+
> all before reporting completion. Never delete user files, versioned artifacts, worktrees, or
|
|
327
|
+
> another session's temporary files. Full rules:
|
|
328
|
+
> [_shared/workspace-hygiene.md](../../_shared/workspace-hygiene.md).
|
|
@@ -20,6 +20,16 @@ description: >-
|
|
|
20
20
|
|
|
21
21
|
> **CodeOps Artifact Schema**: 1
|
|
22
22
|
|
|
23
|
+
## Auto-effort option
|
|
24
|
+
|
|
25
|
+
If `$ARGUMENTS` contains exactly one exact standalone `--auto-effort` or `--auto-effort=<level>`
|
|
26
|
+
token before the first `--` sentinel, remove it before resolving targets, paths, or modes; zero
|
|
27
|
+
occurrences means this skill's recommended level (`high`) is printed as a suggestion only, more
|
|
28
|
+
than one or an invalid level is an argument error; announce
|
|
29
|
+
`Auto-effort active — reasoning <level> applied for this run`; then read and apply
|
|
30
|
+
[../../_shared/reasoning-effort.md](../../_shared/reasoning-effort.md) §Auto-effort option. The
|
|
31
|
+
run clears the level before its final summary.
|
|
32
|
+
|
|
23
33
|
Analyze an existing codebase — any language, any framework — and produce a
|
|
24
34
|
structured **reconstruction brief** that can be fed to the make-requirements
|
|
25
35
|
skill to generate formal requirement documents capable of rebuilding the entire
|
|
@@ -216,3 +226,11 @@ mapping is in **`phases.md`**.
|
|
|
216
226
|
- the make-requirements skill — consumes `09-reconstruction-brief.md` to produce formal RDs (downstream; this brief is its input)
|
|
217
227
|
- the make-plan skill — turns RDs into implementation plans (rebuild pipeline)
|
|
218
228
|
- your project's coding/testing standards (AGENTS.md) — code-quality and test patterns to reference while analyzing
|
|
229
|
+
|
|
230
|
+
---
|
|
231
|
+
|
|
232
|
+
> **Workspace hygiene (non-negotiable):** put every temporary artifact this run creates in
|
|
233
|
+
> `$CODEOPS_TMPDIR` (fallback: the OS temp directory), never in the repository, and delete them
|
|
234
|
+
> all before reporting completion. Never delete user files, versioned artifacts, worktrees, or
|
|
235
|
+
> another session's temporary files. Full rules:
|
|
236
|
+
> [_shared/workspace-hygiene.md](../../_shared/workspace-hygiene.md).
|
package/skills/roadmap/SKILL.md
CHANGED
|
@@ -379,3 +379,11 @@ only facts you can read — do not invent settings.
|
|
|
379
379
|
- Related skills: requirements (`RD Drafted` hook), preflight (`RD/Plan Preflighted`
|
|
380
380
|
hooks), make-plan (`Plan Created` hook + linking), exec-plan (`Executing` / `Done` /
|
|
381
381
|
`Blocked` hooks).
|
|
382
|
+
|
|
383
|
+
---
|
|
384
|
+
|
|
385
|
+
> **Workspace hygiene (non-negotiable):** put every temporary artifact this run creates in
|
|
386
|
+
> `$CODEOPS_TMPDIR` (fallback: the OS temp directory), never in the repository, and delete them
|
|
387
|
+
> all before reporting completion. Never delete user files, versioned artifacts, worktrees, or
|
|
388
|
+
> another session's temporary files. Full rules:
|
|
389
|
+
> [_shared/workspace-hygiene.md](../../_shared/workspace-hygiene.md).
|
|
@@ -92,3 +92,11 @@ on), present only **genuinely viable** options, second-guessed and grounded in w
|
|
|
92
92
|
actually reported, and lead with a recommendation. The user decides; never apply a migration
|
|
93
93
|
without an explicit confirmation (or `--yes`). For consequential choices, apply the
|
|
94
94
|
recommendation-hardening protocol (`_shared/recommendation-hardening.md`).
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
> **Workspace hygiene (non-negotiable):** put every temporary artifact this run creates in
|
|
99
|
+
> `$CODEOPS_TMPDIR` (fallback: the OS temp directory), never in the repository, and delete them
|
|
100
|
+
> all before reporting completion. Never delete user files, versioned artifacts, worktrees, or
|
|
101
|
+
> another session's temporary files. Full rules:
|
|
102
|
+
> [_shared/workspace-hygiene.md](../../_shared/workspace-hygiene.md).
|
|
@@ -50,6 +50,8 @@ Present:
|
|
|
50
50
|
|
|
51
51
|
- detected domains and concrete evidence;
|
|
52
52
|
- phase tag → capability/effort policy;
|
|
53
|
+
- reasoning-effort defaults per role when risk signals justify them (see
|
|
54
|
+
[routing.md](routing.md) §Reasoning effort policy);
|
|
53
55
|
- required specialist reviewers;
|
|
54
56
|
- proposed concurrency limit;
|
|
55
57
|
- whether custom TOML agents add value over dynamic packets; and
|
|
@@ -114,3 +116,11 @@ python3 "${CODEOPS_PLUGIN_ROOT}/scripts/install_agents.py" --project . --check
|
|
|
114
116
|
```
|
|
115
117
|
|
|
116
118
|
Report configured roles, model pins if any, read-only roles, fallbacks, and unresolved capability gaps.
|
|
119
|
+
|
|
120
|
+
---
|
|
121
|
+
|
|
122
|
+
> **Workspace hygiene (non-negotiable):** put every temporary artifact this run creates in
|
|
123
|
+
> `$CODEOPS_TMPDIR` (fallback: the OS temp directory), never in the repository, and delete them
|
|
124
|
+
> all before reporting completion. Never delete user files, versioned artifacts, worktrees, or
|
|
125
|
+
> another session's temporary files. Full rules:
|
|
126
|
+
> [_shared/workspace-hygiene.md](../../_shared/workspace-hygiene.md).
|
|
@@ -27,7 +27,7 @@ CodeOps routing lives under the optional `routing` and `quality` fields in `code
|
|
|
27
27
|
|
|
28
28
|
Allowed effort values follow the active OpenCode release. Prefer `medium` for bounded reconnaissance, `high` for correctness/security review, and higher supported levels only for genuinely demanding semantic or architectural work.
|
|
29
29
|
|
|
30
|
-
An optional per-role `reasoning` field sets the provider reasoning-effort passthrough (`none`, `minimal`, `low`, `medium`, `high`, `xhigh`, `max`). Generated project specialists default to `max` through their brief or the embedded `reasoningEffort`; a routing value wins over the brief.
|
|
30
|
+
An optional per-role `reasoning` field sets the provider reasoning-effort passthrough (`none`, `minimal`, `low`, `medium`, `high`, `xhigh`, `max`). Generated project specialists default to `max` through their brief or the embedded `reasoningEffort`; a routing value wins over the brief and is embedded without provider-capability detection. At runtime the plugin applies a level only when the active model exposes a matching variant; an unsupported value leaves the request unchanged (see the policy below).
|
|
31
31
|
|
|
32
32
|
```json
|
|
33
33
|
"roles": {
|
|
@@ -35,6 +35,21 @@ An optional per-role `reasoning` field sets the provider reasoning-effort passth
|
|
|
35
35
|
}
|
|
36
36
|
```
|
|
37
37
|
|
|
38
|
+
## Reasoning effort policy
|
|
39
|
+
|
|
40
|
+
A role's `reasoning` entry is a project default, not the only source. The runtime resolution
|
|
41
|
+
order is `dispatch marker > session auto-effort > routing role default > inherit parent variant`
|
|
42
|
+
(see [../../_shared/reasoning-effort.md](../../_shared/reasoning-effort.md)). A dispatch marker
|
|
43
|
+
comes from an execution plan's per-phase suggestion; a session level comes from an explicit
|
|
44
|
+
`--auto-effort` run. Both override the routing default for their scope, and routing applies only
|
|
45
|
+
when a role entry exists — with no entry the child inherits the parent variant.
|
|
46
|
+
|
|
47
|
+
The suggestion vocabulary is `low`, `medium`, `high`, and `max`, while the routing field accepts
|
|
48
|
+
the wider provider enum (`none`, `minimal`, `low`, `medium`, `high`, `xhigh`, `max`). The deepseek
|
|
49
|
+
flash model exposes `low`/`medium`/`high`/`max`; prefer `low` for mechanical work, `medium` for
|
|
50
|
+
bounded implementation, `high` for planning and review, and `max` only for adversarial analysis.
|
|
51
|
+
An unsupported value is skipped at runtime, so a routing entry never produces a provider error.
|
|
52
|
+
|
|
38
53
|
Model pins are optional per role. When omitted, OpenCode resolves the model from the explicit spawn, project defaults, and parent session. A missing pin must never block the workflow.
|
|
39
54
|
|
|
40
55
|
Reviewer selection is driven by risk tags:
|
package/skills/techdocs/SKILL.md
CHANGED
|
@@ -197,3 +197,11 @@ auto-compacts context — no manual threshold handling is needed.)
|
|
|
197
197
|
- [templates.md](templates.md) — all VitePress file templates (index, architecture/*, ADR log + ADR template, guides/*, reference/*). Read when writing any document in Phase 4.
|
|
198
198
|
- [vitepress-setup.md](vitepress-setup.md) — Phase 3 install, `config.ts`, npm scripts, `.gitignore`, and sidebar auto-update. Read when scaffolding VitePress or adding pages.
|
|
199
199
|
- [authoring-and-update.md](authoring-and-update.md) — Phase 5 authoring guidelines + Mermaid types, Phase 6 incremental/comprehensive update protocol with the Design Intent Preservation rule, and the review_techdocs health check. Read before authoring, before any auto-update, and for review_techdocs.
|
|
200
|
+
|
|
201
|
+
---
|
|
202
|
+
|
|
203
|
+
> **Workspace hygiene (non-negotiable):** put every temporary artifact this run creates in
|
|
204
|
+
> `$CODEOPS_TMPDIR` (fallback: the OS temp directory), never in the repository, and delete them
|
|
205
|
+
> all before reporting completion. Never delete user files, versioned artifacts, worktrees, or
|
|
206
|
+
> another session's temporary files. Full rules:
|
|
207
|
+
> [_shared/workspace-hygiene.md](../../_shared/workspace-hygiene.md).
|
|
@@ -7,6 +7,16 @@ description: Upgrade an existing CodeOps requirements set, specification, plan,
|
|
|
7
7
|
|
|
8
8
|
The current CodeOps artifact schema is `1`. Historical Claude CodeOps `3.x` stamps describe the producing skill release, not this schema. Treat them as legacy input requiring assessment, not as numeric predecessors of schema 1.
|
|
9
9
|
|
|
10
|
+
## Auto-effort option
|
|
11
|
+
|
|
12
|
+
If `$ARGUMENTS` contains exactly one exact standalone `--auto-effort` or `--auto-effort=<level>`
|
|
13
|
+
token before the first `--` sentinel, remove it before resolving targets, paths, or modes; zero
|
|
14
|
+
occurrences means this skill's recommended level (`high`) is printed as a suggestion only, more
|
|
15
|
+
than one or an invalid level is an argument error; announce
|
|
16
|
+
`Auto-effort active — reasoning <level> applied for this run`; then read and apply
|
|
17
|
+
[../../_shared/reasoning-effort.md](../../_shared/reasoning-effort.md) §Auto-effort option. The
|
|
18
|
+
run clears the level before its final summary.
|
|
19
|
+
|
|
10
20
|
## Scope
|
|
11
21
|
|
|
12
22
|
Upgrade content and structure in place. Layout moves belong to `setup-codeops`. Never combine a layout migration and semantic/schema upgrade into one irreversible operation.
|
|
@@ -73,3 +83,11 @@ approved drift repair; and the Git diff contains only the approved migration.
|
|
|
73
83
|
|
|
74
84
|
Report old formats, new schema, files changed, ambiguities resolved, RD-to-plan coverage, preserved
|
|
75
85
|
progress, and residual risk. Do not auto-advance lifecycle stages.
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
> **Workspace hygiene (non-negotiable):** put every temporary artifact this run creates in
|
|
90
|
+
> `$CODEOPS_TMPDIR` (fallback: the OS temp directory), never in the repository, and delete them
|
|
91
|
+
> all before reporting completion. Never delete user files, versioned artifacts, worktrees, or
|
|
92
|
+
> another session's temporary files. Full rules:
|
|
93
|
+
> [_shared/workspace-hygiene.md](../../_shared/workspace-hygiene.md).
|
|
@@ -50,6 +50,25 @@ These apply to all code I write unless this project's `AGENTS.md` overrides a sp
|
|
|
50
50
|
- **Prevent injection:** parameterized queries (never string-concatenate SQL/NoSQL), escape output / use framework auto-escaping (XSS), never pass unsanitized input to shells/`eval` (command injection), canonicalize and reject `..`/absolute paths (path traversal), anti-CSRF tokens + `SameSite` cookies, rate-limit auth endpoints.
|
|
51
51
|
- **Protect data:** TLS in transit; encrypt sensitive data at rest; hash passwords with `bcrypt`/`argon2`/`scrypt`; never hardcode secrets (use env vars / secret managers); never log secrets or PII; return minimal errors in production; restrictive CORS; request-size limits; audit dependencies; run containers as non-root from minimal images.
|
|
52
52
|
|
|
53
|
+
# Workspace hygiene (NON-NEGOTIABLE)
|
|
54
|
+
|
|
55
|
+
- **Own your temporary artifacts.** Verification logs, diffs, patch files, commit-message files,
|
|
56
|
+
scratch directories, fixture trees, and downloaded artifacts are borrowed space. Put them under
|
|
57
|
+
`$CODEOPS_TMPDIR` when the CodeOps plugin exports it (one directory per session); otherwise use
|
|
58
|
+
the OS temp directory. Never write temporary files into the repository.
|
|
59
|
+
- **Delete at completion.** Before reporting any task, phase, or session complete, delete every
|
|
60
|
+
temporary artifact the run created — including verification logs. If the user asked for an
|
|
61
|
+
artifact to be kept, name its exact path and keep that file only.
|
|
62
|
+
- **Never delete what you do not own.** User files, repository content, versioned artifacts,
|
|
63
|
+
`codeops/` planning artifacts, and git worktrees are durable. Never touch another session's
|
|
64
|
+
temporary files, and never follow a symlink out of the temp root.
|
|
65
|
+
- **No secrets in temp files.** Do not write secrets into a temporary file; if one already holds a
|
|
66
|
+
secret, delete it and say so without printing its contents.
|
|
67
|
+
- **Report it.** The final summary states `Cleanup: done`, or names what was kept and why, or
|
|
68
|
+
reports a failed deletion with its path and reason.
|
|
69
|
+
- The canonical protocol, including the plugin's automatic safety net, is
|
|
70
|
+
`_shared/workspace-hygiene.md`.
|
|
71
|
+
|
|
53
72
|
# Testing standards
|
|
54
73
|
|
|
55
74
|
- **Run the project's verify command (build + test) before completing any task or committing.** No code is "done" while any test fails.
|
|
@@ -42,6 +42,12 @@ Do not duplicate these standards in `~/.config/opencode/AGENTS.md` — the plugi
|
|
|
42
42
|
artifacts get validation too — see the full standards' validation-command table.
|
|
43
43
|
|
|
44
44
|
# Working style
|
|
45
|
+
- **Cleanup after yourself (NON-NEGOTIABLE).** Put every temporary artifact you create — logs,
|
|
46
|
+
diffs, patches, commit-message files, scratch directories — under `$CODEOPS_TMPDIR` when it is
|
|
47
|
+
set (otherwise the OS temp directory), never inside the repository, and delete them all before
|
|
48
|
+
reporting a task complete. Never delete user files, versioned artifacts, worktrees, or another
|
|
49
|
+
session's temporary files. If something must outlive the task, name it and say why. Full rules:
|
|
50
|
+
`_shared/workspace-hygiene.md`.
|
|
45
51
|
- **Ask before assuming**; **verify previous work** before building on it.
|
|
46
52
|
- **Do not overengineer:** use the simplest implementation that fully satisfies the authorized
|
|
47
53
|
requirements and existing project conventions. Do not add abstractions, layers, dependencies,
|