project-tiny-context-harness 0.2.40 → 0.2.41
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/LICENSE +21 -21
- package/README.md +237 -237
- package/assets/README.md +279 -279
- package/assets/agents/.gitkeep +1 -1
- package/assets/agents/AGENTS_CORE.md +58 -58
- package/assets/context_templates/architecture.md +31 -31
- package/assets/context_templates/area.md +31 -31
- package/assets/context_templates/context.toml +27 -27
- package/assets/context_templates/deployment.md +35 -35
- package/assets/context_templates/global.md +53 -53
- package/assets/context_templates/verification.md +31 -31
- package/assets/github/.gitkeep +1 -1
- package/assets/github/harness.yml +27 -27
- package/assets/make/.gitkeep +1 -1
- package/assets/make/sdlc-harness.mk +31 -31
- package/assets/skills/context_development_engineer/SKILL.md +86 -86
- package/assets/skills/context_full_project_export/SKILL.md +13 -13
- package/assets/skills/context_product_plan/SKILL.md +85 -85
- package/assets/skills/context_uiux_design/SKILL.md +110 -110
- package/assets/tools/validate_context.py +276 -276
- package/dist/commands/export-context.js +5 -5
- package/dist/commands/index.js +11 -11
- package/dist/commands/package-source.js +2 -2
- package/migrations/README.md +3 -3
- package/package.json +51 -51
- package/source-mappings.yaml +17 -17
package/LICENSE
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2026 Seven128
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Seven128
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
# Project Tiny Context Harness
|
|
2
|
-
|
|
1
|
+
# Project Tiny Context Harness
|
|
2
|
+
|
|
3
3
|
[](https://www.npmjs.com/package/project-tiny-context-harness)
|
|
4
4
|
[](https://github.com/Seven128/project-tiny-context-harness/actions/workflows/package.yml)
|
|
5
5
|
[](https://securityscorecards.dev/viewer/?uri=github.com/Seven128/project-tiny-context-harness)
|
|
@@ -9,9 +9,9 @@
|
|
|
9
9
|
Translations: [Chinese (Simplified)](https://github.com/Seven128/project-tiny-context-harness/blob/main/README.zh-CN.md)
|
|
10
10
|
|
|
11
11
|
`project-tiny-context-harness` ships the `sdlc-harness` CLI for Project Tiny Context Harness: repo-native project memory for AI coding agents.
|
|
12
|
-
|
|
13
|
-
The default is **Minimal Context Harness**. It maintains a compact `project_context/**` fact source, a short `AGENTS.md` startup router, role Skills and a `validate-context` gate so fresh agents can recover project intent, constraints, verification entry points and next safe actions quickly.
|
|
14
|
-
|
|
12
|
+
|
|
13
|
+
The default is **Minimal Context Harness**. It maintains a compact `project_context/**` fact source, a short `AGENTS.md` startup router, role Skills and a `validate-context` gate so fresh agents can recover project intent, constraints, verification entry points and next safe actions quickly.
|
|
14
|
+
|
|
15
15
|
It does not default to lifecycle phases, plan tasks, stage skills, stage documents or phase gates. Harness maintains context quality; your project tests, CI, review process and human acceptance remain responsible for product quality.
|
|
16
16
|
|
|
17
17
|
Use it when coding agents repeatedly lose project intent across new chats, handoffs, RFC/debug turns or tool changes. The intended tradeoff is: keep durable intent and recovery paths; leave execution evidence to code, tests and review.
|
|
@@ -62,7 +62,7 @@ No-install preview:
|
|
|
62
62
|
## Why It Exists
|
|
63
63
|
|
|
64
64
|
Coding agents can move quickly inside one thread and still drift when a new chat, model, tool, reviewer or debugging session loses the project-specific facts that were never encoded anywhere stable.
|
|
65
|
-
|
|
65
|
+
|
|
66
66
|
Minimal Context Harness creates a small, explicit recovery path: project goal, boundaries, architecture context, validation entry points and durable task conclusions. It is designed to sit beside specs, tests, issues, docs and code intelligence tools instead of replacing them.
|
|
67
67
|
|
|
68
68
|
The core bet is: **keep the memory, drop the ceremony**. Earlier stage-based workflows pushed ordinary software work through explicit phase artifacts and gates. Modern coding agents already internalize much of the understand, design, implement, test and repair loop, so Project Tiny Context Harness keeps the high-density repo context that survives fresh chats without making every task follow SDLC-stage choreography.
|
|
@@ -70,22 +70,22 @@ The core bet is: **keep the memory, drop the ceremony**. Earlier stage-based wor
|
|
|
70
70
|
## Positioning
|
|
71
71
|
|
|
72
72
|
| Adjacent tool type | Use it for | Harness stance |
|
|
73
|
-
|---|---|---|
|
|
74
|
-
| Spec-first kits | Turning feature ideas into structured specs and plans. | Complementary; Harness keeps durable project facts, not a required spec chain. |
|
|
75
|
-
| BMAD-style workflows and full SDLC processes | Coordinated role/process ceremonies on high-risk work. | Lighter default; no phase gates or work-product trees. |
|
|
76
|
-
| Task Master-style planners | Backlog decomposition and task execution state. | Complementary; Harness does not own task state. |
|
|
77
|
-
| Context7/Serena-style retrieval or code-intelligence tools | Pulling external docs, symbols or repository facts on demand. | Complementary; Harness stores local repo truth. |
|
|
78
|
-
| IDE or agent memory | Tool-specific continuity inside one product surface. | Portable fallback; plain files any agent can read. |
|
|
79
|
-
|
|
80
|
-
## Try It In 60 Seconds
|
|
81
|
-
|
|
82
|
-
```sh
|
|
83
|
-
mkdir project-tiny-context-harness-demo
|
|
84
|
-
cd project-tiny-context-harness-demo
|
|
85
|
-
git init
|
|
86
|
-
npm init -y
|
|
87
|
-
npm install -D project-tiny-context-harness@latest
|
|
88
|
-
npx --yes --package project-tiny-context-harness@latest sdlc-harness init
|
|
73
|
+
|---|---|---|
|
|
74
|
+
| Spec-first kits | Turning feature ideas into structured specs and plans. | Complementary; Harness keeps durable project facts, not a required spec chain. |
|
|
75
|
+
| BMAD-style workflows and full SDLC processes | Coordinated role/process ceremonies on high-risk work. | Lighter default; no phase gates or work-product trees. |
|
|
76
|
+
| Task Master-style planners | Backlog decomposition and task execution state. | Complementary; Harness does not own task state. |
|
|
77
|
+
| Context7/Serena-style retrieval or code-intelligence tools | Pulling external docs, symbols or repository facts on demand. | Complementary; Harness stores local repo truth. |
|
|
78
|
+
| IDE or agent memory | Tool-specific continuity inside one product surface. | Portable fallback; plain files any agent can read. |
|
|
79
|
+
|
|
80
|
+
## Try It In 60 Seconds
|
|
81
|
+
|
|
82
|
+
```sh
|
|
83
|
+
mkdir project-tiny-context-harness-demo
|
|
84
|
+
cd project-tiny-context-harness-demo
|
|
85
|
+
git init
|
|
86
|
+
npm init -y
|
|
87
|
+
npm install -D project-tiny-context-harness@latest
|
|
88
|
+
npx --yes --package project-tiny-context-harness@latest sdlc-harness init
|
|
89
89
|
make validate-context
|
|
90
90
|
```
|
|
91
91
|
|
|
@@ -115,7 +115,7 @@ npm ci
|
|
|
115
115
|
npm run smoke:quickstart
|
|
116
116
|
npm run preview:pack
|
|
117
117
|
cd /path/to/your/test-repo
|
|
118
|
-
npm install -D /path/to/project-tiny-context-harness/tmp/sdlc/source-preview/package/project-tiny-context-harness-0.2.
|
|
118
|
+
npm install -D /path/to/project-tiny-context-harness/tmp/sdlc/source-preview/package/project-tiny-context-harness-0.2.41.tgz
|
|
119
119
|
npx --no-install sdlc-harness init --adopt
|
|
120
120
|
make validate-context
|
|
121
121
|
```
|
|
@@ -125,23 +125,23 @@ Use this tarball path only for source-preview testing, private review or package
|
|
|
125
125
|
If the source preview path fails, open a [Source preview report](https://github.com/Seven128/project-tiny-context-harness/issues/new?template=source_preview_report.yml) with the command, environment and shortest useful output.
|
|
126
126
|
|
|
127
127
|
Expected result:
|
|
128
|
-
|
|
129
|
-
```text
|
|
130
|
-
AGENTS.md
|
|
131
|
-
project_context/
|
|
132
|
-
context.toml
|
|
133
|
-
global.md
|
|
134
|
-
architecture.md
|
|
135
|
-
areas/main.md
|
|
136
|
-
areas/main/verification.md
|
|
137
|
-
```
|
|
138
|
-
|
|
139
|
-
Fresh-agent test prompt:
|
|
140
|
-
|
|
141
|
-
```text
|
|
142
|
-
Read AGENTS.md and project_context/** first. Summarize the project goal, non-goals, architecture boundaries, validation entry points and next safe action before proposing code changes.
|
|
143
|
-
```
|
|
144
|
-
|
|
128
|
+
|
|
129
|
+
```text
|
|
130
|
+
AGENTS.md
|
|
131
|
+
project_context/
|
|
132
|
+
context.toml
|
|
133
|
+
global.md
|
|
134
|
+
architecture.md
|
|
135
|
+
areas/main.md
|
|
136
|
+
areas/main/verification.md
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
Fresh-agent test prompt:
|
|
140
|
+
|
|
141
|
+
```text
|
|
142
|
+
Read AGENTS.md and project_context/** first. Summarize the project goal, non-goals, architecture boundaries, validation entry points and next safe action before proposing code changes.
|
|
143
|
+
```
|
|
144
|
+
|
|
145
145
|
If the agent can answer that without rediscovering the repo from scratch, the Harness is doing its job.
|
|
146
146
|
|
|
147
147
|
A useful first answer should recover the project goal, non-goals, architecture boundaries, validation entry points and next safe action. It should not invent benchmark results or claim tests passed.
|
|
@@ -172,26 +172,26 @@ For existing repositories, read the [adoption guide](https://github.com/Seven128
|
|
|
172
172
|
For common launch and adoption questions, see the [FAQ](https://github.com/Seven128/project-tiny-context-harness/blob/main/docs/faq.md).
|
|
173
173
|
|
|
174
174
|
## Install
|
|
175
|
-
|
|
176
|
-
```sh
|
|
177
|
-
npm install -D project-tiny-context-harness@latest
|
|
178
|
-
npx --yes --package project-tiny-context-harness@latest sdlc-harness init
|
|
179
|
-
```
|
|
180
|
-
|
|
181
|
-
For existing projects:
|
|
182
|
-
|
|
183
|
-
```sh
|
|
184
|
-
npx --yes --package project-tiny-context-harness@latest sdlc-harness init --adopt
|
|
185
|
-
```
|
|
186
|
-
|
|
187
|
-
`init` creates `project_context/context.toml`, `project_context/global.md`, `project_context/architecture.md`, `project_context/areas/main.md`, `project_context/areas/main/verification.md`, agent guidance, Context authoring Skills, a full-project export Skill, managed templates/tools, a Makefile include and `.github/workflows/harness.yml`. The generated workflow runs only the selected Harness gate, `validate-context` or `validate-harness`; maintainer-only package tests and source-drift checks are intentionally kept out of consumer projects. It does not create stage work-product trees, lifecycle state or stage skills by default.
|
|
188
|
-
|
|
189
|
-
## FAQ
|
|
190
|
-
|
|
191
|
-
**Why not just write a better README?**
|
|
192
|
-
|
|
193
|
-
README is for humans and broad orientation. Minimal Context is a smaller machine-readable recovery path for fresh agents: durable intent, non-goals, boundaries, validation commands and context drift notes.
|
|
194
|
-
|
|
175
|
+
|
|
176
|
+
```sh
|
|
177
|
+
npm install -D project-tiny-context-harness@latest
|
|
178
|
+
npx --yes --package project-tiny-context-harness@latest sdlc-harness init
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
For existing projects:
|
|
182
|
+
|
|
183
|
+
```sh
|
|
184
|
+
npx --yes --package project-tiny-context-harness@latest sdlc-harness init --adopt
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
`init` creates `project_context/context.toml`, `project_context/global.md`, `project_context/architecture.md`, `project_context/areas/main.md`, `project_context/areas/main/verification.md`, agent guidance, Context authoring Skills, a full-project export Skill, managed templates/tools, a Makefile include and `.github/workflows/harness.yml`. The generated workflow runs only the selected Harness gate, `validate-context` or `validate-harness`; maintainer-only package tests and source-drift checks are intentionally kept out of consumer projects. It does not create stage work-product trees, lifecycle state or stage skills by default.
|
|
188
|
+
|
|
189
|
+
## FAQ
|
|
190
|
+
|
|
191
|
+
**Why not just write a better README?**
|
|
192
|
+
|
|
193
|
+
README is for humans and broad orientation. Minimal Context is a smaller machine-readable recovery path for fresh agents: durable intent, non-goals, boundaries, validation commands and context drift notes.
|
|
194
|
+
|
|
195
195
|
**Is this only for Codex?**
|
|
196
196
|
|
|
197
197
|
No. The generated files are plain repository assets. Codex, Claude Code, Cursor, Gemini CLI, Cline, Roo or a human reviewer can read the same facts.
|
|
@@ -205,195 +205,195 @@ Neither. Public docs, npm copy and launch posts are English-first so new visitor
|
|
|
205
205
|
**Does `validate-context` prove the project works?**
|
|
206
206
|
|
|
207
207
|
No. It checks that recovery facts exist and avoids fake test-result claims. Product quality still belongs to tests, CI, review and human acceptance.
|
|
208
|
-
|
|
209
|
-
**Will this create documentation burden?**
|
|
210
|
-
|
|
211
|
-
It should stay smaller than a full process. Ordinary bug fixes and local refactors do not update Context unless they produce durable product, architecture, API, state or validation facts.
|
|
212
|
-
|
|
213
|
-
## CLI Entry Safety
|
|
214
|
-
|
|
215
|
-
The canonical npm package is `project-tiny-context-harness`; `sdlc-harness` is the bin name. Prefer package-qualified `npx` commands for ad hoc use because bare `npx sdlc-harness` can resolve an older package name or a stale local install. After `init`, the managed Makefile wrapper uses the canonical latest CLI by default and can be overridden with `SDLC_HARNESS=...` when a project intentionally pins a local package.
|
|
216
|
-
|
|
217
|
-
Use `npx --no-install sdlc-harness ...` only when you explicitly want the already installed local package, such as release smoke tests against a packed tarball.
|
|
218
|
-
|
|
219
|
-
## Capabilities
|
|
220
|
-
|
|
221
|
-
| Capability | Entry Point | Description |
|
|
222
|
-
|---|---|---|
|
|
223
|
-
| Project initialization | `npx --yes --package project-tiny-context-harness@latest sdlc-harness init` | Creates `project_context/context.toml`, `project_context/global.md`, `project_context/architecture.md`, `project_context/areas/main.md`, `project_context/areas/main/verification.md`, `AGENTS.md`, minimal managed assets and a Makefile include. |
|
|
224
|
-
| Existing project adoption | `npx --yes --package project-tiny-context-harness@latest sdlc-harness init --adopt` | Adds Minimal Context Harness non-destructively to an existing repository. |
|
|
225
|
-
| Configurable Harness root | `--harness-folder`, `package.json#sdlcHarness.harnessFolderName`, `sdlc-harness.config.json` | Supports Codex `.codex`, Claude `.claude`, Cursor `.cursor`, Cline `.cline`, Roo `.roo`, Gemini `.gemini` or a custom folder. |
|
|
208
|
+
|
|
209
|
+
**Will this create documentation burden?**
|
|
210
|
+
|
|
211
|
+
It should stay smaller than a full process. Ordinary bug fixes and local refactors do not update Context unless they produce durable product, architecture, API, state or validation facts.
|
|
212
|
+
|
|
213
|
+
## CLI Entry Safety
|
|
214
|
+
|
|
215
|
+
The canonical npm package is `project-tiny-context-harness`; `sdlc-harness` is the bin name. Prefer package-qualified `npx` commands for ad hoc use because bare `npx sdlc-harness` can resolve an older package name or a stale local install. After `init`, the managed Makefile wrapper uses the canonical latest CLI by default and can be overridden with `SDLC_HARNESS=...` when a project intentionally pins a local package.
|
|
216
|
+
|
|
217
|
+
Use `npx --no-install sdlc-harness ...` only when you explicitly want the already installed local package, such as release smoke tests against a packed tarball.
|
|
218
|
+
|
|
219
|
+
## Capabilities
|
|
220
|
+
|
|
221
|
+
| Capability | Entry Point | Description |
|
|
222
|
+
|---|---|---|
|
|
223
|
+
| Project initialization | `npx --yes --package project-tiny-context-harness@latest sdlc-harness init` | Creates `project_context/context.toml`, `project_context/global.md`, `project_context/architecture.md`, `project_context/areas/main.md`, `project_context/areas/main/verification.md`, `AGENTS.md`, minimal managed assets and a Makefile include. |
|
|
224
|
+
| Existing project adoption | `npx --yes --package project-tiny-context-harness@latest sdlc-harness init --adopt` | Adds Minimal Context Harness non-destructively to an existing repository. |
|
|
225
|
+
| Configurable Harness root | `--harness-folder`, `package.json#sdlcHarness.harnessFolderName`, `sdlc-harness.config.json` | Supports Codex `.codex`, Claude `.claude`, Cursor `.cursor`, Cline `.cline`, Roo `.roo`, Gemini `.gemini` or a custom folder. |
|
|
226
226
|
| Product planning Skill | `<harnessRoot>/skills/context_product_plan/SKILL.md` | Handles explicit product-planning requests and writes durable product conclusions to `project_context/**`. |
|
|
227
227
|
| UI/UX design Skill | `<harnessRoot>/skills/context_uiux_design/SKILL.md` | Handles explicit UI/UX design requests, writes screen/interaction conclusions to `project_context/**`, updates root `DESIGN.md` visual tokens with Google `@google/design.md`, and includes compact visual-quality calibration for product/page positioning, user needs, information density, brand/product UI and common AI-design anti-patterns. |
|
|
228
228
|
| Development engineer Skill | `<harnessRoot>/skills/context_development_engineer/SKILL.md` | Handles explicit development-engineering requests and writes durable engineering conclusions to `project_context/**`. |
|
|
229
229
|
| Full project context export Skill | `<harnessRoot>/skills/context_full_project_export/SKILL.md` | Handles explicit full-project or code-level export requests and uses `export-context --all`, `--full` or `--code` to create temporary artifacts under `tmp/sdlc/context-exports/**`. |
|
|
230
|
-
| Project-local Skills | `<harnessRoot>/skills/<role>/SKILL.md` | Optional local product/design/development Skills created by the project, such as `product_plan`, `uiux_design` or `development_engineer`. They supersede package-managed default Skills when more specific, are not overwritten by `sync`, and should keep front matter trigger keywords aligned with the project `AGENTS.md` role-trigger rule. |
|
|
231
|
-
| Managed file sync | `make sdlc-sync` or `npx --yes --package project-tiny-context-harness@latest sdlc-harness sync` | Refreshes package-managed guidance, default Skills, Makefile include, context templates, tools and workflow YAML. It does not perform semantic Context generation. |
|
|
232
|
-
| Upgrade | `make sdlc-upgrade` or `npx --yes --package project-tiny-context-harness@latest sdlc-harness upgrade` | Runs safe migrations and `sync`, including Schema v4 Context graph manifest creation when missing. |
|
|
230
|
+
| Project-local Skills | `<harnessRoot>/skills/<role>/SKILL.md` | Optional local product/design/development Skills created by the project, such as `product_plan`, `uiux_design` or `development_engineer`. They supersede package-managed default Skills when more specific, are not overwritten by `sync`, and should keep front matter trigger keywords aligned with the project `AGENTS.md` role-trigger rule. |
|
|
231
|
+
| Managed file sync | `make sdlc-sync` or `npx --yes --package project-tiny-context-harness@latest sdlc-harness sync` | Refreshes package-managed guidance, default Skills, Makefile include, context templates, tools and workflow YAML. It does not perform semantic Context generation. |
|
|
232
|
+
| Upgrade | `make sdlc-upgrade` or `npx --yes --package project-tiny-context-harness@latest sdlc-harness upgrade` | Runs safe migrations and `sync`, including Schema v4 Context graph manifest creation when missing. |
|
|
233
233
|
| Combined project export | `npx --yes --package project-tiny-context-harness@latest sdlc-harness export-context --all [--check]` | Creates both default temporary exports under `tmp/sdlc/context-exports/**`. |
|
|
234
234
|
| Project Context export | `npx --yes --package project-tiny-context-harness@latest sdlc-harness export-context --full [--output tmp/sdlc/context-exports/name.md] [--check]` | Creates a temporary Context summary artifact. It is not Context and must not be registered in `project_context/context.toml`. |
|
|
235
235
|
| Code implementation export | `npx --yes --package project-tiny-context-harness@latest sdlc-harness export-context --code [--output tmp/sdlc/context-exports/name.md] [--check]` | Creates a temporary single-file code implementation artifact. It is not Context and must not be registered in `project_context/context.toml`. |
|
|
236
|
-
| Context validation | `npx --yes --package project-tiny-context-harness@latest sdlc-harness validate-context`, `make validate-context` | Checks required project recovery fields, Context graph metadata, declared paths/roles and fake test-execution claims. |
|
|
237
|
-
| Diagnostics | `make sdlc-doctor` or `npx --yes --package project-tiny-context-harness@latest sdlc-harness doctor` | Reports Harness root, package version, schema version and required Minimal Context paths. |
|
|
238
|
-
| Package source checks | `sdlc-harness package sync-source`, `sdlc-harness package check-source` | Maintainer-only commands for keeping package canonical assets aligned with the source workspace. |
|
|
239
|
-
|
|
236
|
+
| Context validation | `npx --yes --package project-tiny-context-harness@latest sdlc-harness validate-context`, `make validate-context` | Checks required project recovery fields, Context graph metadata, declared paths/roles and fake test-execution claims. |
|
|
237
|
+
| Diagnostics | `make sdlc-doctor` or `npx --yes --package project-tiny-context-harness@latest sdlc-harness doctor` | Reports Harness root, package version, schema version and required Minimal Context paths. |
|
|
238
|
+
| Package source checks | `sdlc-harness package sync-source`, `sdlc-harness package check-source` | Maintainer-only commands for keeping package canonical assets aligned with the source workspace. |
|
|
239
|
+
|
|
240
240
|
For product, UI/UX and engineering tasks that touch design intent, API/Schema, state/runtime behavior, architecture boundaries or verification design, the default Skills compile a short current-task contract before implementation. The contract starts with `Context Delta: none|required`; `required` preserves context-first behavior, while `none` means the task can proceed against existing Context. The task contract and Contract Conformance are handoff evidence, not new PRD, tech-plan, validator or gate surfaces.
|
|
241
241
|
|
|
242
242
|
Multilingual trigger phrases and local-language export filenames are compatibility details. Public README, npm and launch copy stay English-first; literal non-English examples are documented only where they explain generated Skill matching or default export filenames.
|
|
243
|
-
|
|
244
|
-
For complex task-contract work, agents may use `plan.md` or an equivalent temporary plan surface as scratch space for `Context Delta`, `Task Contract`, implementation steps and Conformance notes. It is execution cache only: durable facts must be extracted into `project_context/**` or `DESIGN.md`, and temporary plans are not Context, not registered in `context.toml` and not default project assets.
|
|
245
|
-
|
|
246
|
-
For Web pages, frontend layout, UI/UX, product module boundaries or decisions about where information belongs, agents should run a lightweight page product-positioning check before deciding whether the change is context-first. The check asks what judgment the user needs to make on the page, what information/actions/feedback the product must provide, what should not be persistent, what belongs in downstream consumption, ops, detail or another page, and whether layout and information density match the page task. If ownership is unclear, inspect the relevant pages and Context first. The check is input to change classification: it does not by itself require a Context update, new document chain or validator gate.
|
|
247
|
-
|
|
248
|
-
The expected Context Priority Ladder is: read Context first, run the page product-positioning check when applicable, classify durable-fact impact or use `Context Delta` inside task-contract scenarios, choose context-first or code-first, then perform Contract Conformance when applicable and Context drift check before handoff. This is prompt-level guidance, not an edit-order validator.
|
|
249
|
-
|
|
250
|
-
Managed `AGENTS.md` guidance is intentionally a startup router, not a full manual. It should contain fact-source entry points, hard boundaries, key triggers and shortest validation commands; package consumers default long design reasoning to Context unless they already have a local spec/design convention. The source repository keeps stable Harness workflow rationale in `PROJECT_SPEC.md`. Role procedures belong in Skills and human usage guidance in README. The recommended 40-70 line range is a soft budget, not a validator gate.
|
|
251
|
-
|
|
252
|
-
## Minimal Context Contract
|
|
253
|
-
|
|
254
|
-
`project_context/global.md` should contain:
|
|
255
|
-
|
|
256
|
-
- project goal
|
|
257
|
-
- non-goals / boundaries
|
|
258
|
-
- background
|
|
259
|
-
- design rationale
|
|
260
|
-
- architecture context link
|
|
261
|
-
- product / delivery brief
|
|
262
|
-
- UX / screen brief
|
|
263
|
-
- short verification context pointers
|
|
264
|
-
- current state
|
|
265
|
-
- next safe action
|
|
266
|
-
- context index
|
|
267
|
-
|
|
268
|
-
`project_context/architecture.md` should contain restrained architecture facts:
|
|
269
|
-
|
|
270
|
-
- system boundary
|
|
271
|
-
- component map
|
|
272
|
-
- data / control flow
|
|
273
|
-
- design rationale
|
|
274
|
-
- constraints and tradeoffs
|
|
275
|
-
- verification implications
|
|
276
|
-
- open risks
|
|
277
|
-
|
|
278
|
-
`project_context/context.toml` is the Schema v4 Context graph manifest. `init` creates a default `main` product/domain area for ordinary projects and registers `project_context/areas/main/verification.md` as its default `verification` role Context. `upgrade` creates a conservative baseline manifest for existing projects by registering current `project_context/areas/**/*.md` files as areas, except obvious `verification.md` and `deployment.md` role files. Larger projects can add `[[areas]]` and `[[context]]` entries with role, trigger/read policy, default children and monorepo boundary metadata such as `forbidden_runtime_dependencies`.
|
|
279
|
-
|
|
280
|
-
`project_context/areas/<unit>.md` should contain product/domain ownership context by default. Complex projects can freely nest context nodes under `areas/`, such as `areas/<area>/README.md`, `areas/<area>/contracts/*.md`, `areas/<area>/foundation/*.md`, `areas/<area>/verification.md`, `areas/<area>/deployment.md` or other durable context files:
|
|
281
|
-
|
|
282
|
-
- responsibility
|
|
283
|
-
- user / system contract
|
|
284
|
-
- core data / API / state
|
|
285
|
-
- key constraints
|
|
286
|
-
- code entry points
|
|
287
|
-
- related role context pointers
|
|
288
|
-
- open risks
|
|
289
|
-
|
|
290
|
-
Other context files under `project_context/**` can declare `context_role` in front matter or receive a role from `context.toml`. Roles are semantic labels for agent reading and authoring behavior; `validate-context` checks graph structure, paths and field shapes instead of enforcing a writing template for every role. Supported roles are `global`, `architecture`, `area`, `domain`, `subdomain`, `contract`, `foundation`, `verification`, `deployment`, `archive`, `implementation-index` and `decision-rationale`.
|
|
291
|
-
|
|
292
|
-
When authoring, migrating or cleaning up `project_context/areas/**`, run a soft role placement scan before registering every Markdown file as an `[[areas]]` entry. Keep `area` / `domain` for product ownership, use `subdomain` only for a smaller owned product context, move interface semantics into `contract`, stable theory or vocabulary into `foundation`, repeatable test/deploy execution paths into `verification` / `deployment`, code maps into `implementation-index`, design reasons into `decision-rationale`, and non-default historical or external material into `archive`. This is prompt-level guidance, not a validator gate.
|
|
293
|
-
|
|
294
|
-
Automatic migration moves legacy `project_context/modules/**/*.md` files into `project_context/areas/**/*.md`, creates a usable graph baseline and does not infer deep semantic roles. If an existing deep area file is really a foundation, contract, archive or implementation index, a later agent should update `context.toml` explicitly. Boundary rules are metadata only; Harness does not scan source imports or build a runtime dependency graph.
|
|
295
|
-
|
|
296
|
-
## Temporary Project Exports
|
|
297
|
-
|
|
298
|
-
`export-context --all` creates both temporary Markdown artifacts for copying into an external tool, archiving an ad hoc discussion or handing context to a one-off collaborator:
|
|
299
|
-
|
|
300
|
-
```sh
|
|
301
|
-
npx --yes --package project-tiny-context-harness@latest sdlc-harness export-context --all
|
|
302
|
-
npx --yes --package project-tiny-context-harness@latest sdlc-harness export-context --all --check
|
|
303
|
-
```
|
|
304
|
-
|
|
243
|
+
|
|
244
|
+
For complex task-contract work, agents may use `plan.md` or an equivalent temporary plan surface as scratch space for `Context Delta`, `Task Contract`, implementation steps and Conformance notes. It is execution cache only: durable facts must be extracted into `project_context/**` or `DESIGN.md`, and temporary plans are not Context, not registered in `context.toml` and not default project assets.
|
|
245
|
+
|
|
246
|
+
For Web pages, frontend layout, UI/UX, product module boundaries or decisions about where information belongs, agents should run a lightweight page product-positioning check before deciding whether the change is context-first. The check asks what judgment the user needs to make on the page, what information/actions/feedback the product must provide, what should not be persistent, what belongs in downstream consumption, ops, detail or another page, and whether layout and information density match the page task. If ownership is unclear, inspect the relevant pages and Context first. The check is input to change classification: it does not by itself require a Context update, new document chain or validator gate.
|
|
247
|
+
|
|
248
|
+
The expected Context Priority Ladder is: read Context first, run the page product-positioning check when applicable, classify durable-fact impact or use `Context Delta` inside task-contract scenarios, choose context-first or code-first, then perform Contract Conformance when applicable and Context drift check before handoff. This is prompt-level guidance, not an edit-order validator.
|
|
249
|
+
|
|
250
|
+
Managed `AGENTS.md` guidance is intentionally a startup router, not a full manual. It should contain fact-source entry points, hard boundaries, key triggers and shortest validation commands; package consumers default long design reasoning to Context unless they already have a local spec/design convention. The source repository keeps stable Harness workflow rationale in `PROJECT_SPEC.md`. Role procedures belong in Skills and human usage guidance in README. The recommended 40-70 line range is a soft budget, not a validator gate.
|
|
251
|
+
|
|
252
|
+
## Minimal Context Contract
|
|
253
|
+
|
|
254
|
+
`project_context/global.md` should contain:
|
|
255
|
+
|
|
256
|
+
- project goal
|
|
257
|
+
- non-goals / boundaries
|
|
258
|
+
- background
|
|
259
|
+
- design rationale
|
|
260
|
+
- architecture context link
|
|
261
|
+
- product / delivery brief
|
|
262
|
+
- UX / screen brief
|
|
263
|
+
- short verification context pointers
|
|
264
|
+
- current state
|
|
265
|
+
- next safe action
|
|
266
|
+
- context index
|
|
267
|
+
|
|
268
|
+
`project_context/architecture.md` should contain restrained architecture facts:
|
|
269
|
+
|
|
270
|
+
- system boundary
|
|
271
|
+
- component map
|
|
272
|
+
- data / control flow
|
|
273
|
+
- design rationale
|
|
274
|
+
- constraints and tradeoffs
|
|
275
|
+
- verification implications
|
|
276
|
+
- open risks
|
|
277
|
+
|
|
278
|
+
`project_context/context.toml` is the Schema v4 Context graph manifest. `init` creates a default `main` product/domain area for ordinary projects and registers `project_context/areas/main/verification.md` as its default `verification` role Context. `upgrade` creates a conservative baseline manifest for existing projects by registering current `project_context/areas/**/*.md` files as areas, except obvious `verification.md` and `deployment.md` role files. Larger projects can add `[[areas]]` and `[[context]]` entries with role, trigger/read policy, default children and monorepo boundary metadata such as `forbidden_runtime_dependencies`.
|
|
279
|
+
|
|
280
|
+
`project_context/areas/<unit>.md` should contain product/domain ownership context by default. Complex projects can freely nest context nodes under `areas/`, such as `areas/<area>/README.md`, `areas/<area>/contracts/*.md`, `areas/<area>/foundation/*.md`, `areas/<area>/verification.md`, `areas/<area>/deployment.md` or other durable context files:
|
|
281
|
+
|
|
282
|
+
- responsibility
|
|
283
|
+
- user / system contract
|
|
284
|
+
- core data / API / state
|
|
285
|
+
- key constraints
|
|
286
|
+
- code entry points
|
|
287
|
+
- related role context pointers
|
|
288
|
+
- open risks
|
|
289
|
+
|
|
290
|
+
Other context files under `project_context/**` can declare `context_role` in front matter or receive a role from `context.toml`. Roles are semantic labels for agent reading and authoring behavior; `validate-context` checks graph structure, paths and field shapes instead of enforcing a writing template for every role. Supported roles are `global`, `architecture`, `area`, `domain`, `subdomain`, `contract`, `foundation`, `verification`, `deployment`, `archive`, `implementation-index` and `decision-rationale`.
|
|
291
|
+
|
|
292
|
+
When authoring, migrating or cleaning up `project_context/areas/**`, run a soft role placement scan before registering every Markdown file as an `[[areas]]` entry. Keep `area` / `domain` for product ownership, use `subdomain` only for a smaller owned product context, move interface semantics into `contract`, stable theory or vocabulary into `foundation`, repeatable test/deploy execution paths into `verification` / `deployment`, code maps into `implementation-index`, design reasons into `decision-rationale`, and non-default historical or external material into `archive`. This is prompt-level guidance, not a validator gate.
|
|
293
|
+
|
|
294
|
+
Automatic migration moves legacy `project_context/modules/**/*.md` files into `project_context/areas/**/*.md`, creates a usable graph baseline and does not infer deep semantic roles. If an existing deep area file is really a foundation, contract, archive or implementation index, a later agent should update `context.toml` explicitly. Boundary rules are metadata only; Harness does not scan source imports or build a runtime dependency graph.
|
|
295
|
+
|
|
296
|
+
## Temporary Project Exports
|
|
297
|
+
|
|
298
|
+
`export-context --all` creates both temporary Markdown artifacts for copying into an external tool, archiving an ad hoc discussion or handing context to a one-off collaborator:
|
|
299
|
+
|
|
300
|
+
```sh
|
|
301
|
+
npx --yes --package project-tiny-context-harness@latest sdlc-harness export-context --all
|
|
302
|
+
npx --yes --package project-tiny-context-harness@latest sdlc-harness export-context --all --check
|
|
303
|
+
```
|
|
304
|
+
|
|
305
305
|
This generates both default artifacts with the same timestamp: `tmp/sdlc/context-exports/full-project-context-<timestamp>.md` and `tmp/sdlc/context-exports/code-level-implementation-<timestamp>/code-level-implementation.md`. `--all` does not accept `--output`; use `--full` or `--code` for custom single-artifact paths.
|
|
306
|
-
|
|
307
|
-
`export-context --full` creates only the temporary Markdown Context bundle:
|
|
308
|
-
|
|
309
|
-
```sh
|
|
310
|
-
npx --yes --package project-tiny-context-harness@latest sdlc-harness export-context --full
|
|
311
|
-
npx --yes --package project-tiny-context-harness@latest sdlc-harness export-context --full --output tmp/sdlc/context-exports/my-export.md
|
|
312
|
-
npx --yes --package project-tiny-context-harness@latest sdlc-harness export-context --full --check
|
|
313
|
-
```
|
|
314
|
-
|
|
306
|
+
|
|
307
|
+
`export-context --full` creates only the temporary Markdown Context bundle:
|
|
308
|
+
|
|
309
|
+
```sh
|
|
310
|
+
npx --yes --package project-tiny-context-harness@latest sdlc-harness export-context --full
|
|
311
|
+
npx --yes --package project-tiny-context-harness@latest sdlc-harness export-context --full --output tmp/sdlc/context-exports/my-export.md
|
|
312
|
+
npx --yes --package project-tiny-context-harness@latest sdlc-harness export-context --full --check
|
|
313
|
+
```
|
|
314
|
+
|
|
315
315
|
The default output is `tmp/sdlc/context-exports/full-project-context-<timestamp>.md`. The file title is `# Full Project Context Export`. `--check` reports the planned output path, source count, source file list and warnings without writing a file. The artifact header always says `Export artifact. Do not reference from project_context/context.toml.`
|
|
316
|
-
|
|
317
|
-
The exporter includes Context files, key README / AGENTS / DESIGN documents, managed Skill guidance, Makefile verification-entry summaries, a directory tree summary and Context code-entry indexes. It excludes `.env*`, secret/token/cookie-oriented files, raw captures, licensed payload dumps, `node_modules`, build output, caches, coverage, test reports and existing export artifacts; obvious sensitive assignment values are redacted and reported as warnings.
|
|
318
|
-
|
|
319
|
-
`export-context --code` creates one temporary Markdown file for handing the current implementation state to an external model:
|
|
320
|
-
|
|
321
|
-
```sh
|
|
322
|
-
npx --yes --package project-tiny-context-harness@latest sdlc-harness export-context --code
|
|
323
|
-
npx --yes --package project-tiny-context-harness@latest sdlc-harness export-context --code --output tmp/sdlc/context-exports/my-code-export.md
|
|
324
|
-
npx --yes --package project-tiny-context-harness@latest sdlc-harness export-context --code --check
|
|
325
|
-
```
|
|
326
|
-
|
|
316
|
+
|
|
317
|
+
The exporter includes Context files, key README / AGENTS / DESIGN documents, managed Skill guidance, Makefile verification-entry summaries, a directory tree summary and Context code-entry indexes. It excludes `.env*`, secret/token/cookie-oriented files, raw captures, licensed payload dumps, `node_modules`, build output, caches, coverage, test reports and existing export artifacts; obvious sensitive assignment values are redacted and reported as warnings.
|
|
318
|
+
|
|
319
|
+
`export-context --code` creates one temporary Markdown file for handing the current implementation state to an external model:
|
|
320
|
+
|
|
321
|
+
```sh
|
|
322
|
+
npx --yes --package project-tiny-context-harness@latest sdlc-harness export-context --code
|
|
323
|
+
npx --yes --package project-tiny-context-harness@latest sdlc-harness export-context --code --output tmp/sdlc/context-exports/my-code-export.md
|
|
324
|
+
npx --yes --package project-tiny-context-harness@latest sdlc-harness export-context --code --check
|
|
325
|
+
```
|
|
326
|
+
|
|
327
327
|
The default output is `tmp/sdlc/context-exports/code-level-implementation-<timestamp>/code-level-implementation.md`. The file title is `# Code-Level Implementation Export`. It scans main source and engineering configuration files, adds each file path, type, line count, character count, SHA256, a heuristic one-sentence summary and a fenced redacted code block. It does not split output into multiple Markdown files.
|
|
328
|
-
|
|
328
|
+
|
|
329
329
|
Both export modes refuse `project_context/**` and non-temporary output paths. `validate-context` also rejects obvious export artifact names such as `code-level-implementation`, `full-project-context`, legacy Chinese export names, `project-overview`, `context-bundle`, `context-summary` or `context-export` if they are registered in `project_context/context.toml`.
|
|
330
|
-
|
|
331
|
-
The Context should be dense, durable and short. Former ADR content belongs in `Design Rationale` when it still affects future changes. Implementation details that are obvious from code should stay in code and tests; only non-obvious constraints belong in Context.
|
|
332
|
-
|
|
333
|
-
Verification and deployment role Context are allowed only when a test, smoke, CI, deployment, bootstrap or runtime path has durable recovery value. Record minimal preparation, the shortest command/path, expected stage or signal, acceptable warnings and dead ends already ruled out. Do not record one-off logs, full output, temporary JSON, CI artifacts, release ledgers, reports, secrets, tokens, cookies, device ids or raw payloads. Put execution details in the owning area's `verification` or `deployment` role Context; use project-level references only for truly cross-domain paths.
|
|
334
|
-
|
|
335
|
-
`project_context/**` is authoritative for intended responsibility, ownership, product intent, architecture boundaries, integration direction, allowed or forbidden dependencies and verification/deployment entry paths. Source code is authoritative for current implementation state. If code shape, keyword search results or nearby implementations disagree with Context, agents should call out implementation drift, missing work or stale Context instead of overriding Context-declared ownership or intent.
|
|
336
|
-
|
|
337
|
-
Before the first code edit, agents should classify the change instead of relying on a fixed timer. Long-term fact changes include product ownership or plans, module responsibilities, information architecture, API / Schema, state-machine or scheduler semantics, cross-area boundaries and verification/deployment entry paths. If a task hits one of these categories, Context-first is the default path and the first update should be the relevant `project_context/**` entry with enough durable context to guide implementation, without a fixed line-count limit:
|
|
338
|
-
|
|
339
|
-
```text
|
|
340
|
-
context -> implementation -> verification -> context drift check
|
|
341
|
-
```
|
|
342
|
-
|
|
343
|
-
Code-first is a controlled exception for ordinary bug fixes, local styling changes, local implementation-drift repairs, test fixes and exploratory spikes; those should not update Context unless they produce a durable fact. Once code discovery produces one, the agent should update Context before final alignment or handoff:
|
|
344
|
-
|
|
345
|
-
```text
|
|
346
|
-
implementation discovery -> context update if long-term fact changed -> implementation alignment -> verification
|
|
347
|
-
```
|
|
348
|
-
|
|
349
|
-
This ordering is guidance, not a new validator gate. `validate-context` checks recoverability and fake verification claims; it does not infer whether Context or code was edited first. Automation may warn about possible context-first drift, but should not block work. Handoffs should report only a lightweight status such as `Context: updated ...` or `Context: no durable fact change`.
|
|
350
|
-
|
|
330
|
+
|
|
331
|
+
The Context should be dense, durable and short. Former ADR content belongs in `Design Rationale` when it still affects future changes. Implementation details that are obvious from code should stay in code and tests; only non-obvious constraints belong in Context.
|
|
332
|
+
|
|
333
|
+
Verification and deployment role Context are allowed only when a test, smoke, CI, deployment, bootstrap or runtime path has durable recovery value. Record minimal preparation, the shortest command/path, expected stage or signal, acceptable warnings and dead ends already ruled out. Do not record one-off logs, full output, temporary JSON, CI artifacts, release ledgers, reports, secrets, tokens, cookies, device ids or raw payloads. Put execution details in the owning area's `verification` or `deployment` role Context; use project-level references only for truly cross-domain paths.
|
|
334
|
+
|
|
335
|
+
`project_context/**` is authoritative for intended responsibility, ownership, product intent, architecture boundaries, integration direction, allowed or forbidden dependencies and verification/deployment entry paths. Source code is authoritative for current implementation state. If code shape, keyword search results or nearby implementations disagree with Context, agents should call out implementation drift, missing work or stale Context instead of overriding Context-declared ownership or intent.
|
|
336
|
+
|
|
337
|
+
Before the first code edit, agents should classify the change instead of relying on a fixed timer. Long-term fact changes include product ownership or plans, module responsibilities, information architecture, API / Schema, state-machine or scheduler semantics, cross-area boundaries and verification/deployment entry paths. If a task hits one of these categories, Context-first is the default path and the first update should be the relevant `project_context/**` entry with enough durable context to guide implementation, without a fixed line-count limit:
|
|
338
|
+
|
|
339
|
+
```text
|
|
340
|
+
context -> implementation -> verification -> context drift check
|
|
341
|
+
```
|
|
342
|
+
|
|
343
|
+
Code-first is a controlled exception for ordinary bug fixes, local styling changes, local implementation-drift repairs, test fixes and exploratory spikes; those should not update Context unless they produce a durable fact. Once code discovery produces one, the agent should update Context before final alignment or handoff:
|
|
344
|
+
|
|
345
|
+
```text
|
|
346
|
+
implementation discovery -> context update if long-term fact changed -> implementation alignment -> verification
|
|
347
|
+
```
|
|
348
|
+
|
|
349
|
+
This ordering is guidance, not a new validator gate. `validate-context` checks recoverability and fake verification claims; it does not infer whether Context or code was edited first. Automation may warn about possible context-first drift, but should not block work. Handoffs should report only a lightweight status such as `Context: updated ...` or `Context: no durable fact change`.
|
|
350
|
+
|
|
351
351
|
The product planning, UI/UX and development engineer Skills are Context authoring helpers. They may shape product plans, screen flows, design handoff, implementation plans or technical decisions, but they do not create a default PRD/UIUX/tech-plan document chain. Their descriptions intentionally avoid broad generic single-word triggers such as product, design or development in any language. For visual systems, `init` creates root `DESIGN.md` as the durable source for colors, typography, spacing, shapes and component tokens; `upgrade` creates it for existing Harness projects when missing. The generated file starts as a neutral starter baseline with visual tokens, background/color logic, typography, spacing, component states and do/don't guidance; user-authored design rules take precedence once present. Validate it with `npx @google/design.md lint DESIGN.md`. The product/design Skills keep compact calibration for product/page positioning, user needs, information density, content/action placement, true empty/error/loading states, layout stability, register choice, design-system continuity and common AI-design anti-patterns.
|
|
352
|
-
|
|
353
|
-
Harness installs Impeccable as a default package dependency. For design drafts, redesigns, visual polish, frontend redesign/styling or existing-UI review work, agents should run Impeccable by default when there is a scan target such as UI source, page files, build output or a local/remote URL:
|
|
354
|
-
|
|
355
|
-
```bash
|
|
356
|
-
npx impeccable detect src/
|
|
357
|
-
```
|
|
358
|
-
|
|
359
|
-
Impeccable is a default design-review step when a scan target exists, but it is not a `validate-context` gate. If there is no suitable target or the command cannot run, the agent should say why and continue. Its findings are design-review signals, not a replacement for screenshots, project tests or human review.
|
|
360
|
-
|
|
361
|
-
Project-specific Skill rules can be added as separate project-local Skills. Do not edit package-managed `context_*` Skills directly; `sync` overwrites them:
|
|
362
|
-
|
|
363
|
-
```sh
|
|
364
|
-
mkdir -p <harnessRoot>/skills/uiux_design
|
|
365
|
-
$EDITOR <harnessRoot>/skills/uiux_design/SKILL.md
|
|
366
|
-
```
|
|
367
|
-
|
|
368
|
-
When a project-local Skill and a package-managed default Skill both apply, agents should use the more specific project-local Skill first. The local Skill should keep durable conclusions in `project_context/**` and `DESIGN.md`. Its front matter `description` should stay aligned with the matching default `context_*` Skill and the project `AGENTS.md` role-trigger rule; update both the local Skill and agent guidance when adding or narrowing product/design/development trigger terms. `sync` does not merge Skill overrides and does not overwrite separate project-local Skills. Existing `<harnessRoot>/pjsdlc_managed/override_skills/*.md` files should be migrated into standalone project-local Skills before running `sync`.
|
|
369
|
-
|
|
370
|
-
## Sync And Upgrade Boundary
|
|
371
|
-
|
|
372
|
-
`sync` is intentionally narrow. It refreshes managed files and never generates project semantics.
|
|
373
|
-
|
|
374
|
-
`upgrade` performs safe package migrations and `sync`. The former migration command has been removed because existing users have completed migration.
|
|
375
|
-
|
|
376
|
-
## Common Commands
|
|
377
|
-
|
|
378
|
-
```sh
|
|
379
|
-
npx --yes --package project-tiny-context-harness@latest sdlc-harness init
|
|
380
|
-
npx --yes --package project-tiny-context-harness@latest sdlc-harness init --adopt
|
|
381
|
-
npx --yes --package project-tiny-context-harness@latest sdlc-harness export-context --all
|
|
382
|
-
npx --yes --package project-tiny-context-harness@latest sdlc-harness export-context --full
|
|
383
|
-
npx --yes --package project-tiny-context-harness@latest sdlc-harness export-context --code
|
|
384
|
-
make sdlc-sync
|
|
385
|
-
make sdlc-upgrade
|
|
386
|
-
npx --yes --package project-tiny-context-harness@latest sdlc-harness validate-context
|
|
387
|
-
npx --yes --package project-tiny-context-harness@latest sdlc-harness doctor
|
|
388
|
-
make sdlc-doctor
|
|
389
|
-
make validate-context
|
|
390
|
-
make validate-harness
|
|
391
|
-
```
|
|
392
|
-
|
|
393
|
-
`make validate-harness` is a compatibility alias for `validate-context` in vNext projects.
|
|
394
|
-
|
|
395
|
-
## Current Boundary
|
|
396
|
-
|
|
397
|
-
The former stage-based
|
|
398
|
-
|
|
399
|
-
The package direction is now smaller: keep the minimum durable facts that help agents recover context and continue safely.
|
|
352
|
+
|
|
353
|
+
Harness installs Impeccable as a default package dependency. For design drafts, redesigns, visual polish, frontend redesign/styling or existing-UI review work, agents should run Impeccable by default when there is a scan target such as UI source, page files, build output or a local/remote URL:
|
|
354
|
+
|
|
355
|
+
```bash
|
|
356
|
+
npx impeccable detect src/
|
|
357
|
+
```
|
|
358
|
+
|
|
359
|
+
Impeccable is a default design-review step when a scan target exists, but it is not a `validate-context` gate. If there is no suitable target or the command cannot run, the agent should say why and continue. Its findings are design-review signals, not a replacement for screenshots, project tests or human review.
|
|
360
|
+
|
|
361
|
+
Project-specific Skill rules can be added as separate project-local Skills. Do not edit package-managed `context_*` Skills directly; `sync` overwrites them:
|
|
362
|
+
|
|
363
|
+
```sh
|
|
364
|
+
mkdir -p <harnessRoot>/skills/uiux_design
|
|
365
|
+
$EDITOR <harnessRoot>/skills/uiux_design/SKILL.md
|
|
366
|
+
```
|
|
367
|
+
|
|
368
|
+
When a project-local Skill and a package-managed default Skill both apply, agents should use the more specific project-local Skill first. The local Skill should keep durable conclusions in `project_context/**` and `DESIGN.md`. Its front matter `description` should stay aligned with the matching default `context_*` Skill and the project `AGENTS.md` role-trigger rule; update both the local Skill and agent guidance when adding or narrowing product/design/development trigger terms. `sync` does not merge Skill overrides and does not overwrite separate project-local Skills. Existing `<harnessRoot>/pjsdlc_managed/override_skills/*.md` files should be migrated into standalone project-local Skills before running `sync`.
|
|
369
|
+
|
|
370
|
+
## Sync And Upgrade Boundary
|
|
371
|
+
|
|
372
|
+
`sync` is intentionally narrow. It refreshes managed files and never generates project semantics.
|
|
373
|
+
|
|
374
|
+
`upgrade` performs safe package migrations and `sync`. The former migration command has been removed because existing users have completed migration.
|
|
375
|
+
|
|
376
|
+
## Common Commands
|
|
377
|
+
|
|
378
|
+
```sh
|
|
379
|
+
npx --yes --package project-tiny-context-harness@latest sdlc-harness init
|
|
380
|
+
npx --yes --package project-tiny-context-harness@latest sdlc-harness init --adopt
|
|
381
|
+
npx --yes --package project-tiny-context-harness@latest sdlc-harness export-context --all
|
|
382
|
+
npx --yes --package project-tiny-context-harness@latest sdlc-harness export-context --full
|
|
383
|
+
npx --yes --package project-tiny-context-harness@latest sdlc-harness export-context --code
|
|
384
|
+
make sdlc-sync
|
|
385
|
+
make sdlc-upgrade
|
|
386
|
+
npx --yes --package project-tiny-context-harness@latest sdlc-harness validate-context
|
|
387
|
+
npx --yes --package project-tiny-context-harness@latest sdlc-harness doctor
|
|
388
|
+
make sdlc-doctor
|
|
389
|
+
make validate-context
|
|
390
|
+
make validate-harness
|
|
391
|
+
```
|
|
392
|
+
|
|
393
|
+
`make validate-harness` is a compatibility alias for `validate-context` in vNext projects.
|
|
394
|
+
|
|
395
|
+
## Current Boundary
|
|
396
|
+
|
|
397
|
+
The former stage-based workflow is no longer shipped as a runnable default, compatibility layer or migration command.
|
|
398
|
+
|
|
399
|
+
The package direction is now smaller: keep the minimum durable facts that help agents recover context and continue safely.
|