@manhd_d/ai-harness 0.11.0 → 0.13.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 +38 -0
- package/README.md +26 -38
- package/adapters/ai-python/adapter.yaml +1 -1
- package/adapters/ai-python/rules.md +3 -0
- package/adapters/ai-python/skills/harness-ai-python-rag-access/SKILL.md +1 -0
- package/adapters/ai-python/skills/harness-ai-python-tool-safety/SKILL.md +1 -0
- package/adapters/astro/adapter.yaml +3 -5
- package/adapters/astro/checks/verification.yaml +6 -6
- package/adapters/astro/evals/cases.json +5 -5
- package/adapters/astro/rules/architecture.md +2 -8
- package/adapters/astro/rules/deployment.md +2 -8
- package/adapters/astro/rules.md +5 -14
- package/adapters/astro/skills/harness-astro-islands/SKILL.md +3 -2
- package/adapters/astro/skills/harness-astro-performance/SKILL.md +1 -0
- package/adapters/astro/skills/harness-astro-project-architecture/SKILL.md +9 -19
- package/adapters/astro/skills/harness-astro-seo/SKILL.md +1 -0
- package/adapters/java-spring/adapter.yaml +2 -4
- package/adapters/java-spring/rules/database.md +2 -2
- package/adapters/java-spring/rules/performance.md +2 -2
- package/adapters/java-spring/rules.md +4 -1
- package/adapters/java-spring/skills/harness-java-spring-spring-api/SKILL.md +1 -0
- package/adapters/kubernetes/adapter.yaml +1 -1
- package/adapters/kubernetes/rules.md +3 -0
- package/adapters/kubernetes/skills/harness-kubernetes-helm-release/SKILL.md +1 -0
- package/adapters/kubernetes/skills/harness-kubernetes-rollout-safety/SKILL.md +1 -0
- package/adapters/kubernetes/skills/harness-kubernetes-workload-review/SKILL.md +1 -0
- package/adapters/react-native/adapter.yaml +1 -1
- package/adapters/react-native/rules.md +3 -0
- package/adapters/react-native/skills/harness-react-native-behavior-testing/SKILL.md +1 -0
- package/adapters/react-native/skills/harness-react-native-device-permissions/SKILL.md +1 -0
- package/adapters/react-native/skills/harness-react-native-offline-sync/SKILL.md +1 -0
- package/adapters/react-native/skills/harness-react-native-screen-delivery/SKILL.md +1 -0
- package/adapters/react-nextjs/adapter.yaml +1 -1
- package/adapters/react-nextjs/rules.md +3 -0
- package/adapters/react-nextjs/skills/harness-react-nextjs-accessible-ui/SKILL.md +1 -0
- package/adapters/react-nextjs/skills/harness-react-nextjs-behavior-testing/SKILL.md +1 -0
- package/adapters/react-nextjs/skills/harness-react-nextjs-feature-delivery/SKILL.md +1 -0
- package/adapters/react-nextjs/skills/harness-react-nextjs-server-boundaries/SKILL.md +1 -0
- package/capabilities/analysis/capability.json +48 -0
- package/capabilities/analysis/checks/verification.json +16 -0
- package/capabilities/analysis/evals/cases.json +15 -0
- package/capabilities/architecture/agents/architecture-reviewer.md +5 -0
- package/capabilities/architecture/agents/solution-architect.md +5 -0
- package/capabilities/architecture/capability.json +1 -1
- package/capabilities/architecture/checks/verification.json +11 -0
- package/capabilities/architecture/evals/cases.json +10 -0
- package/capabilities/architecture/skills/harness-architecture-change-impact/SKILL.md +5 -0
- package/capabilities/architecture/templates/project-map.md +5 -0
- package/capabilities/architecture/workflows/change-review.md +2 -0
- package/capabilities/delivery/agents/project-manager.md +10 -11
- package/capabilities/delivery/capability.json +8 -2
- package/capabilities/delivery/checks/verification.json +11 -0
- package/capabilities/delivery/evals/cases.json +10 -0
- package/capabilities/delivery/skills/harness-delivery-scope-change/SKILL.md +6 -0
- package/capabilities/delivery/templates/delivery-plan.md +2 -23
- package/capabilities/delivery/workflows/execution-change.md +2 -0
- package/capabilities/discovery/capability.json +37 -0
- package/capabilities/discovery/checks/verification.json +16 -0
- package/capabilities/discovery/evals/cases.json +15 -0
- package/capabilities/product/agents/business-analyst.md +5 -0
- package/capabilities/product/agents/product-manager.md +5 -0
- package/capabilities/product/agents/product-owner.md +5 -0
- package/capabilities/product/agents/project-manager.md +9 -14
- package/capabilities/product/agents/requirements-reviewer.md +5 -0
- package/capabilities/product/capability.json +8 -2
- package/capabilities/product/checks/verification.json +11 -0
- package/capabilities/product/common/document-contract.md +10 -0
- package/capabilities/product/evals/cases.json +21 -0
- package/capabilities/product/skills/harness-product-acceptance-criteria/SKILL.md +4 -7
- package/capabilities/product/skills/harness-product-backlog-prioritization/SKILL.md +9 -6
- package/capabilities/product/skills/harness-product-brd-generation/SKILL.md +2 -6
- package/capabilities/product/skills/harness-product-business-analysis/SKILL.md +12 -10
- package/capabilities/product/skills/harness-product-document-review/SKILL.md +2 -6
- package/capabilities/product/skills/harness-product-idea-discovery/SKILL.md +2 -6
- package/capabilities/product/skills/harness-product-knowledge-analysis/SKILL.md +2 -6
- package/capabilities/product/skills/harness-product-mvp-definition/SKILL.md +1 -2
- package/capabilities/product/skills/harness-product-prd-generation/SKILL.md +2 -6
- package/capabilities/product/skills/harness-product-product-outcomes/SKILL.md +1 -2
- package/capabilities/product/skills/harness-product-product-research/SKILL.md +2 -6
- package/capabilities/product/skills/harness-product-srs-generation/SKILL.md +2 -6
- package/capabilities/product/skills/harness-product-techspec/SKILL.md +1 -1
- package/capabilities/product/skills/harness-product-traceability/SKILL.md +9 -7
- package/capabilities/product/skills/harness-product-use-case-generation/SKILL.md +2 -6
- package/capabilities/product/skills/harness-product-user-stories/SKILL.md +2 -6
- package/capabilities/product/templates/backlog.md +7 -0
- package/capabilities/product/templates/delivery-plan.md +3 -17
- package/capabilities/product/templates/traceability.md +7 -0
- package/capabilities/product/workflows/change-impact-analysis.md +4 -2
- package/capabilities/product/workflows/techspec-maintenance.md +3 -1
- package/cli/adapters.js +9 -5
- package/cli/agents.js +45 -9
- package/cli/capabilities.js +39 -8
- package/cli/checkpoint.js +57 -0
- package/cli/claude.js +40 -0
- package/cli/comparison.js +46 -0
- package/cli/composition.js +1 -0
- package/cli/files.js +2 -1
- package/cli/harness.js +69 -14
- package/cli/main.js +22 -9
- package/cli/maven.js +28 -0
- package/cli/verification-report.js +1 -1
- package/config/agents.claude-code.json +100 -0
- package/config/agents.default.json +25 -5
- package/core/agents/documentation.md +5 -0
- package/core/agents/implementer.md +5 -0
- package/core/agents/orchestrator.md +5 -0
- package/core/agents/planner.md +5 -0
- package/core/agents/project-manager.md +20 -0
- package/core/agents/reviewer.md +5 -0
- package/core/agents/security-reviewer.md +5 -0
- package/core/agents/test-engineer.md +5 -0
- package/core/checks/verification.json +25 -0
- package/core/evals/cases.json +92 -0
- package/core/evals/composition.json +15 -0
- package/core/policies/permissions.md +3 -1
- package/core/rules/context.md +4 -0
- package/core/skills/harness-debugging/SKILL.md +6 -0
- package/core/skills/harness-review/SKILL.md +6 -0
- package/core/skills/harness-spec/SKILL.md +6 -0
- package/core/workflows/adaptive-verification.md +3 -0
- package/core/workflows/agent-routing.md +27 -26
- package/core/workflows/artifact-contract.md +5 -0
- package/core/workflows/continuous-development.md +101 -0
- package/core/workflows/spec-to-code.md +4 -1
- package/docs/README.md +5 -1
- package/docs/agent-configuration.md +9 -5
- package/docs/agent-first.md +66 -0
- package/docs/agent-handoffs.md +8 -0
- package/docs/architecture.md +8 -0
- package/docs/cli.md +4 -0
- package/docs/continuous-development.md +92 -0
- package/docs/documentation-workflows.md +2 -0
- package/docs/end-to-end-workflow.md +4 -0
- package/docs/examples/astro-micro-tools.md +1 -1
- package/docs/examples/checkpoint.json +20 -0
- package/docs/examples/continuous-development.md +40 -0
- package/docs/examples/spring-boot-api.md +2 -4
- package/docs/getting-started.md +5 -2
- package/docs/i18n/README.es.md +32 -0
- package/docs/i18n/README.vi.md +19 -42
- package/docs/i18n/README.zh-CN.md +32 -0
- package/docs/skill-matrix.md +11 -7
- package/docs/tool-setup/README.md +69 -67
- package/docs/tool-setup/claude-code.md +41 -49
- package/docs/tool-setup/codex.md +31 -43
- package/docs/tool-setup/copilot.md +35 -38
- package/docs/tool-setup/cursor.md +25 -40
- package/docs/tool-setup/gemini-cli.md +31 -35
- package/docs/tool-setup/kiro.md +55 -0
- package/docs/versioning.md +17 -0
- package/evals/README.md +4 -0
- package/evals/real-task-comparison.md +4 -0
- package/harness.yaml +4 -2
- package/package.json +3 -2
- package/scripts/compare-tasks.js +15 -0
- package/templates/AGENTS.md +19 -26
- package/templates/delivery-plan.md +25 -0
- package/templates/openspec/design.md +10 -0
- package/templates/openspec/tasks.md +8 -1
- package/adapters/astro/skills/harness-astro-cloudflare/SKILL.md +0 -27
- package/adapters/astro/skills/harness-astro-microfrontend/SKILL.md +0 -27
- package/adapters/java-spring/skills/harness-java-spring-database-migration/SKILL.md +0 -23
- package/adapters/java-spring/skills/harness-java-spring-kafka-outbox/SKILL.md +0 -23
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,29 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## Unreleased — Kiro and clearer tool setup
|
|
4
|
+
|
|
5
|
+
- Add Kiro to all README languages and a documented IDE/CLI/Web setup guide with optional native skill pointers.
|
|
6
|
+
- Separate AI tool installation from project Harness setup; use Core-first npx commands, explicit loading checks and client-specific instruction bridges for all six tools.
|
|
7
|
+
- Preserve native settings; document unreleased Claude flags and Kiro ownership. Add guide/parity/package assertions. No installer, manifest/schema or runtime behavior change; no live-host compatibility claim.
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
## Unreleased — Agent-first delivery and brownfield
|
|
11
|
+
- Route scoped work through agent contracts/preferred skills and approved SA decisions; retire Java outbox/migration and Astro cloud/microfrontend recipes.
|
|
12
|
+
- Add Analysis/Discovery canonical Product profiles, PM/template aliases, shared document contract and host-native/Claude model seeds without overwriting existing settings.
|
|
13
|
+
- Add opt-in Claude import/native wrappers, bounded Maven modules, checkpoint/history/resume and local manual 18-run comparison.
|
|
14
|
+
- Simplify progressive context and README; add Chinese/Spanish translations, migration and behavior/evidence tests. No model calls, merge or npm publish.
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
## Unreleased
|
|
18
|
+
|
|
19
|
+
### Added
|
|
20
|
+
- Continuous development workflow: fresh baselines, proportional cross-role impact, selective living documentation and source-policy proposals, feedback triage and session handoff.
|
|
21
|
+
- Seven Core behavioral scenarios plus a cross-capability scenario, installation/update preservation coverage and package checks.
|
|
22
|
+
|
|
23
|
+
### Changed
|
|
24
|
+
- Existing Core/Product/Architecture/Delivery skills and OpenSpec templates retain stable IDs and distinguish implementation, merge and release evidence.
|
|
25
|
+
- Product 1.5.0, Architecture/Delivery 1.1.0; no new runtime, CLI commands or config schemas. Distribution version and release automation remain unchanged.
|
|
26
|
+
|
|
3
27
|
## Unreleased — Adaptive verification and TechSpec
|
|
4
28
|
- Add read-only adaptive discovery and digest/pointer-based requirement evidence validation; preserve advisory verify behavior.
|
|
5
29
|
- Add Core verification and Product 1.4.0 selective TechSpec maintenance using existing artifact routes/policies.
|
|
@@ -115,6 +139,20 @@
|
|
|
115
139
|
- Check release metadata consistency and establish single-release-PR version discipline; retain v0.6.0 until a dedicated release PR.
|
|
116
140
|
|
|
117
141
|
|
|
142
|
+
## [0.13.0](https://github.com/manh0303/ai-harness/compare/v0.12.0...v0.13.0) (2026-10-13)
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
### Features
|
|
146
|
+
|
|
147
|
+
* make harness agent-first and portable across projects ([5286c66](https://github.com/manh0303/ai-harness/commit/5286c66cb0895c412da4ff9f0a1e05c4b54f3881))
|
|
148
|
+
|
|
149
|
+
## [0.12.0](https://github.com/manh0303/ai-harness/compare/v0.11.0...v0.12.0) (2026-10-13)
|
|
150
|
+
|
|
151
|
+
|
|
152
|
+
### Features
|
|
153
|
+
|
|
154
|
+
* continuous development and living documentation ([e87f007](https://github.com/manh0303/ai-harness/commit/e87f007c31a4a0d99f98b47f75c00ff632d92023))
|
|
155
|
+
|
|
118
156
|
## [0.11.0](https://github.com/manh0303/ai-harness/compare/v0.10.0...v0.11.0) (2026-10-13)
|
|
119
157
|
|
|
120
158
|
|
package/README.md
CHANGED
|
@@ -1,55 +1,43 @@
|
|
|
1
1
|
# AI Harness
|
|
2
2
|
|
|
3
|
-
**English** · [Tiếng Việt](docs/i18n/README.vi.md)
|
|
3
|
+
**English** · [Tiếng Việt](docs/i18n/README.vi.md) · [简体中文](docs/i18n/README.zh-CN.md) · [Español](docs/i18n/README.es.md)
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Reusable agent workflows for software development: **Requirements → Design → Code → Test → Review.**
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
Give an idea, existing docs or a change request to your AI coding tool. Harness helps it inspect the project, clarify open decisions, implement accepted scope and maintain relevant specs/docs. Use only the roles and skills the task needs.
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
| Workflow | Outputs |
|
|
12
|
-
| --- | --- |
|
|
13
|
-
| **BA / PO — Business analysis & product** | Turn ideas or existing docs into BRD, PRD, SRS, user stories and acceptance criteria. |
|
|
14
|
-
| **SA — Solution architecture** | Architecture, non-functional requirements, technical decisions and change-impact analysis. |
|
|
15
|
-
| **PM — Delivery planning** | Delivery phases, dependencies, risks and scope changes. |
|
|
16
|
-
| **Dev / QA — Implementation & testing** | Feature implementation, debugging, tests and code review following project conventions. |
|
|
17
|
-
| **UI/UX & DevOps** | UI design, CI/CD, deployment and operations guidance when needed. |
|
|
18
|
-
|
|
19
|
-
Stack adapters: Spring Boot, React/Next.js, React Native/Expo, Python AI/RAG, Astro and Kubernetes.
|
|
20
|
-
Select only what you need; small tasks do not require a full set of docs or a spec. [Choose your stack & modules](docs/getting-started.md).
|
|
21
|
-
|
|
22
|
-
## Where can you use it?
|
|
23
|
-
|
|
24
|
-
| AI coding tool | Usage | Guide |
|
|
25
|
-
| --- | --- | --- |
|
|
26
|
-
| **Codex** | CLI or IDE extension | [Install & setup](docs/tool-setup/codex.md) |
|
|
27
|
-
| **Claude Code** | Run `claude` in the project terminal | [Install & setup](docs/tool-setup/claude-code.md) |
|
|
28
|
-
| **Cursor** | Open the project and use Agent | [Install & setup](docs/tool-setup/cursor.md) |
|
|
29
|
-
| **GitHub Copilot** | IDE Agent or Copilot CLI | [Install & setup](docs/tool-setup/copilot.md) |
|
|
30
|
-
| **Gemini CLI** | Run `gemini` in the project terminal | [Install & setup](docs/tool-setup/gemini-cli.md) |
|
|
31
|
-
|
|
32
|
-
Harness installs instructions; your AI tool executes the work. Follow each guide for tool-specific instruction loading.
|
|
9
|
+
Works with any project through Core workflows. Optional stack support: Spring Boot, React/Next.js, React Native, Python, Astro and Kubernetes. Stack selection does not choose infrastructure or architecture.
|
|
33
10
|
|
|
34
11
|
## Quick start
|
|
35
12
|
|
|
36
|
-
|
|
13
|
+
Install/sign in to an AI tool below. Requires Node.js 22+. Run in your **project root** terminal:
|
|
37
14
|
|
|
38
15
|
```bash
|
|
39
|
-
npx --yes @manhd_d/ai-harness init
|
|
16
|
+
npx --yes @manhd_d/ai-harness init
|
|
40
17
|
```
|
|
41
18
|
|
|
42
|
-
|
|
19
|
+
`npx` does not install a global `aih` command. Check the installation with
|
|
20
|
+
`npx --yes @manhd_d/ai-harness check`; then open the same project in your AI tool.
|
|
21
|
+
|
|
22
|
+
Then ask your AI tool:
|
|
23
|
+
|
|
24
|
+
> Read AGENTS.md. Inspect this project and its approved decisions. Implement [task], run appropriate checks and maintain the affected docs.
|
|
25
|
+
|
|
26
|
+
Use `init --detect` for supported stack detection. Existing project instructions and custom skills are preserved; `check` checks Harness integrity. Your host executes application tests and controls tools, delegation and permissions.
|
|
43
27
|
|
|
44
|
-
|
|
45
|
-
> Implement: [describe your task]. Run appropriate tests and report the results.
|
|
28
|
+
## Where it runs
|
|
46
29
|
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
30
|
+
| AI tool | Environment | Install the tool | Harness setup |
|
|
31
|
+
| --- | --- | --- | --- |
|
|
32
|
+
| **Codex** | CLI, IDE or connected cloud workspace | [Install](https://developers.openai.com/codex/quickstart/) | [Guide](docs/tool-setup/codex.md) |
|
|
33
|
+
| **Claude Code** | Project terminal | [Install](https://code.claude.com/docs/en/setup) | [Guide](docs/tool-setup/claude-code.md) |
|
|
34
|
+
| **Cursor** | IDE Agent | [Install](https://cursor.com/docs) | [Guide](docs/tool-setup/cursor.md) |
|
|
35
|
+
| **GitHub Copilot** | IDE Agent or CLI | [Install](https://docs.github.com/en/copilot) | [Guide](docs/tool-setup/copilot.md) |
|
|
36
|
+
| **Gemini CLI** | Project terminal | [Install](https://geminicli.com/docs/) | [Guide](docs/tool-setup/gemini-cli.md) |
|
|
37
|
+
| **Kiro** | IDE, CLI or connected Web workspace | [Install](https://kiro.dev/docs/getting-started/installation/) | [Guide](docs/tool-setup/kiro.md) |
|
|
50
38
|
|
|
51
|
-
|
|
39
|
+
Local/cloud execution and external inputs depend on the host's actual access. MCP/connector/API connections can supply docs, designs, tickets and evidence under project source policies.
|
|
52
40
|
|
|
53
|
-
[
|
|
41
|
+
[Getting started](docs/getting-started.md) · [Docs & examples](docs/README.md) · [Input/output](docs/artifact-contract.md) · [Agent configuration](docs/agent-configuration.md) · [Continuous development](docs/continuous-development.md)
|
|
54
42
|
|
|
55
|
-
[
|
|
43
|
+
[Contributing](CONTRIBUTING.md) · [Harness maintenance](docs/harness-maintenance.md) · [MIT](LICENSE)
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
# AI / Python adapter
|
|
2
2
|
|
|
3
|
+
## Design authority
|
|
4
|
+
Actual host/user permissions apply. For design within its scope: approved SA/ADR decisions > existing project conventions > adapter defaults. Proposed technologies need alternatives, trade-offs and an owner decision before implementation; accepted choices are reused without asking again. Selecting this adapter does not select any infrastructure or pattern.
|
|
5
|
+
|
|
3
6
|
Inspect the actual Python version, package manager, provider SDK, orchestration and data boundaries.
|
|
4
7
|
This adapter works for model-backed APIs, agents and RAG; those architectures are optional choices.
|
|
5
8
|
|
|
@@ -6,6 +6,7 @@ description: Build retrieval with enforceable document access and grounded answe
|
|
|
6
6
|
# rag-access
|
|
7
7
|
|
|
8
8
|
## Input
|
|
9
|
+
Approved SA/ADR decisions for the affected scope, existing project conventions and actual stack versions. This skill implements accepted design; it does not select infrastructure, dependencies or architecture.
|
|
9
10
|
Document identities/revisions, tenant ACL policy, retrieval interface and evaluation dataset.
|
|
10
11
|
|
|
11
12
|
## Procedure
|
|
@@ -6,6 +6,7 @@ description: Build bounded model tool calls with independent authorization.
|
|
|
6
6
|
# tool-safety
|
|
7
7
|
|
|
8
8
|
## Input
|
|
9
|
+
Approved SA/ADR decisions for the affected scope, existing project conventions and actual stack versions. This skill implements accepted design; it does not select infrastructure, dependencies or architecture.
|
|
9
10
|
Tool contracts, runtime permission policy, budget/timeouts and side-effect boundaries.
|
|
10
11
|
|
|
11
12
|
## Procedure
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schema_version": 2,
|
|
3
3
|
"id": "astro",
|
|
4
|
-
"description": "
|
|
4
|
+
"description": "Astro framework support following approved project architecture and hosting decisions.",
|
|
5
5
|
"detection": [
|
|
6
6
|
{
|
|
7
7
|
"file": "package.json",
|
|
@@ -21,11 +21,9 @@
|
|
|
21
21
|
"harness-astro-project-architecture",
|
|
22
22
|
"harness-astro-islands",
|
|
23
23
|
"harness-astro-seo",
|
|
24
|
-
"harness-astro-performance"
|
|
25
|
-
"harness-astro-cloudflare",
|
|
26
|
-
"harness-astro-microfrontend"
|
|
24
|
+
"harness-astro-performance"
|
|
27
25
|
],
|
|
28
26
|
"verification": "checks/verification.yaml",
|
|
29
27
|
"evaluation": "evals/cases.json",
|
|
30
|
-
"module_version": "1.
|
|
28
|
+
"module_version": "1.1.0"
|
|
31
29
|
}
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
},
|
|
34
34
|
{
|
|
35
35
|
"id": "tool-browser",
|
|
36
|
-
"title": "Review
|
|
36
|
+
"title": "Review applicable Astro page accessibility and browser behavior",
|
|
37
37
|
"command": [],
|
|
38
38
|
"when_file": null,
|
|
39
39
|
"evidence": [
|
|
@@ -44,14 +44,14 @@
|
|
|
44
44
|
"execution": "manual"
|
|
45
45
|
},
|
|
46
46
|
{
|
|
47
|
-
"id": "
|
|
48
|
-
"title": "
|
|
47
|
+
"id": "approved-hosting",
|
|
48
|
+
"title": "Review approved runtime compatibility and deployment authorization",
|
|
49
49
|
"command": [],
|
|
50
50
|
"when_file": null,
|
|
51
51
|
"evidence": [
|
|
52
|
-
"
|
|
53
|
-
"Preview
|
|
54
|
-
"
|
|
52
|
+
"Actual approved host/runtime and output mode",
|
|
53
|
+
"Preview/build compatibility evidence",
|
|
54
|
+
"Actual owner permission; installation does not deploy"
|
|
55
55
|
],
|
|
56
56
|
"execution": "manual"
|
|
57
57
|
}
|
|
@@ -32,12 +32,12 @@
|
|
|
32
32
|
"critical": true
|
|
33
33
|
},
|
|
34
34
|
{
|
|
35
|
-
"id": "
|
|
36
|
-
"prompt": "
|
|
35
|
+
"id": "no-host-selected",
|
|
36
|
+
"prompt": "An Astro project has approved UX requirements but no hosting decision. Implement the requested feature.",
|
|
37
37
|
"criteria": [
|
|
38
|
-
"
|
|
39
|
-
"
|
|
40
|
-
"
|
|
38
|
+
"Does not silently select Cloudflare or another provider",
|
|
39
|
+
"Uses approved design and asks SA/owner only for consequential deployment gaps",
|
|
40
|
+
"Does not add microfrontend architecture or invent deployment evidence"
|
|
41
41
|
],
|
|
42
42
|
"critical": true
|
|
43
43
|
}
|
|
@@ -1,9 +1,3 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Astro framework boundaries
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
- One website may host many tool routes: `src/pages/tools/<tool>.astro`, shared layouts, reusable UI and isolated `src/lib/<tool>/` functions. Avoid centralized mutable state and coupling between unrelated tools.
|
|
5
|
-
- Choose `output: 'static'` when routes need no runtime rendering. Confirm target Astro version and adapter compatibility before introducing on-demand SSR, actions, API routes or server middleware.
|
|
6
|
-
- A tool with secret credentials, restricted APIs, large server jobs or authoritative writes needs a separately justified secure server boundary. Keep secrets out of browser bundles and build output.
|
|
7
|
-
- Reuse existing UI/design and semantic HTML. React islands are optional and load only where genuine interaction needs them; static Astro pages should not inherit a full React runtime.
|
|
8
|
-
- Discuss a monorepo only when there are shared packages, coordinated releases or truly independent teams; a tools folder is enough initially.
|
|
9
|
-
- Keep architecture decisions reversible: one tool owns its UI, data transformations and tests; dependencies cross via explicit interfaces.
|
|
3
|
+
Read actual output mode, integrations, routes and layouts. Follow approved SA design; use Astro version documentation to implement its server/browser boundaries and assets. Neither a /tools route convention nor static-only rendering is required. Hydration and framework integration follow actual UI requirements and accepted bundle trade-offs.
|
|
@@ -1,9 +1,3 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Astro deployment compatibility
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
- Static Astro output usually needs only static hosting/CDN, with no origin backend or database. Browser-local tools do not require Workers.
|
|
5
|
-
- For new **Cloudflare** projects, validate the current official recommendation for Workers and adapter setup instead of assuming Pages-specific integration. Existing Pages deployments may remain valid under their compatibility constraints.
|
|
6
|
-
- On-demand rendering/APIs require a runtime/adapter matching the Astro version; confirm compatibility for Cloudflare Workers and chosen configuration using upstream docs.
|
|
7
|
-
- Configure deploy variables/secrets in the host, not client-visible `PUBLIC_*` values. Confirm environment separation, domain routing, cache behavior and fallback/404 handling.
|
|
8
|
-
- Use preview/staging, real production build output and asset smoke checks before any approved deploy. Gate writes and releases via Product/DevOps authorization; never execute `wrangler deploy` or change DNS without approval.
|
|
9
|
-
- For future MFE route splitting, define ownership of path, domain, cookies/auth, navigation, asset URLs, SEO/canonicals, monitoring and rollback before introducing separate deployments.
|
|
3
|
+
Inspect approved hosting/runtime, package manager, configured build and output mode. Check Astro/server adapter compatibility against that target's actual versions. Use configured preview checks and report missing access. No cloud provider, account, domain change or deployment is selected or executed by installing this adapter.
|
package/adapters/astro/rules.md
CHANGED
|
@@ -1,17 +1,8 @@
|
|
|
1
|
-
# Astro
|
|
1
|
+
# Astro support
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
## Design authority
|
|
4
|
+
Actual host/user permissions apply. Approved SA/ADR decisions > existing project conventions > adapter defaults. New technology needs alternatives, trade-offs and owner acceptance; reuse accepted decisions.
|
|
4
5
|
|
|
5
|
-
|
|
6
|
-
- Inspect installed Astro version, package manager, routes, integrations, output mode and actual scripts. Never assume a Vite or Astro minor-version API.
|
|
7
|
-
- Read `rules/architecture.md`, `rules/security.md`, `rules/performance.md`, `rules/deployment.md` and only the relevant namespaced skills.
|
|
8
|
-
- Distinguish static HTML, hydrated UI islands, server routes and **separately deployable** micro frontends. Astro Islands are not Module Federation.
|
|
9
|
-
- Avoid adopting React, Tailwind, SSR, a Cloudflare adapter, API/server, storage, auth or a monorepo just because they are available.
|
|
6
|
+
Inspect the installed Astro version, rendering mode, integrations, router/layout conventions and configured scripts. Support static, hybrid or server rendering according to approved requirements. Do not select a host, UI framework, backend, database, monorepo or microfrontend model.
|
|
10
7
|
|
|
11
|
-
|
|
12
|
-
Product approval/requirements → route/tool boundary and privacy model → static-first code with minimal client JS → real build/UX tests → reviewed release. Do not run deployments, fetch unauthorized third-party content or assert permissions without evidence.
|
|
13
|
-
|
|
14
|
-
## Verification
|
|
15
|
-
`aih verify` returns checklists without running commands; inspect package scripts and execute checks through an authorized host. Keep Core TDD/debugging/review; optional Product/UIUX/DevOps provide cross-cutting workflows.
|
|
16
|
-
|
|
17
|
-
Official references: https://docs.astro.build/en/guides/framework-components/ and https://docs.astro.build/en/guides/deploy/cloudflare/.
|
|
8
|
+
Read only relevant [architecture](rules/architecture.md), [security](rules/security.md), [performance](rules/performance.md) and [deployment](rules/deployment.md) support. Existing TypeScript/JavaScript and framework choices take precedence. Use actual build/browser evidence, not inferred results.
|
|
@@ -6,17 +6,18 @@ description: Apply selective Astro Islands and optional React integration withou
|
|
|
6
6
|
# Astro islands and React integration
|
|
7
7
|
|
|
8
8
|
## Input
|
|
9
|
+
Approved SA/ADR decisions for the affected scope, existing project conventions and actual stack versions. This skill implements accepted design; it does not select infrastructure, dependencies or architecture.
|
|
9
10
|
- Astro page/component tree and identified interaction needs.
|
|
10
11
|
- Installed @astrojs/react or other framework integrations, versions, hydration constraints and UX requirements.
|
|
11
12
|
|
|
12
13
|
## Procedure
|
|
13
14
|
1. Separate static content from interactive islands and document which input/output needs browser state.
|
|
14
|
-
2. Prefer native forms and small browser scripts if sufficient;
|
|
15
|
+
2. Prefer native forms and small browser scripts if sufficient; reuse approved integrations; propose missing consequential integration choices to SA/owner before adding dependencies.
|
|
15
16
|
3. For approved React components, confirm `@astrojs/react` setup and use `client:load` for immediately interactive UI, `client:idle` or `client:visible` when deferred hydration fits the UX.
|
|
16
17
|
4. Keep private logic, API keys and session enforcement on the server; do not confuse Astro server frontmatter with secret-safe client props.
|
|
17
18
|
5. Guard network requests against stale responses and unmount races; support keyboard interaction, loading/error/empty states and clear focus.
|
|
18
19
|
6. Inspect JS and hydration in actual browser/test builds; compare against a native Astro implementation.
|
|
19
|
-
7. Explain that islands in one Astro build are NOT separate deployable micro frontends;
|
|
20
|
+
7. Explain that islands in one Astro build are NOT separate deployable micro frontends; return open independent-release choices to SA for alternatives and actual owner decision.
|
|
20
21
|
|
|
21
22
|
## Output
|
|
22
23
|
- Small interactive island(s), hydration rationale, reviewed imports and client JS evidence.
|
|
@@ -6,6 +6,7 @@ description: Reduce Astro page JavaScript, images and hydration cost while prese
|
|
|
6
6
|
# Astro performance
|
|
7
7
|
|
|
8
8
|
## Input
|
|
9
|
+
Approved SA/ADR decisions for the affected scope, existing project conventions and actual stack versions. This skill implements accepted design; it does not select infrastructure, dependencies or architecture.
|
|
9
10
|
- Actual performance issue or quality goal, existing Astro build, package manager and route/island structure.
|
|
10
11
|
- Measurements from browser/profiler or build reports where available.
|
|
11
12
|
|
|
@@ -1,28 +1,18 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: harness-astro-project-architecture
|
|
3
|
-
description:
|
|
3
|
+
description: Implement approved project boundaries with the actual Astro rendering mode, routes and integrations.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# Astro project
|
|
6
|
+
# Astro project support
|
|
7
7
|
|
|
8
8
|
## Input
|
|
9
|
-
|
|
10
|
-
- Existing Astro version, package scripts, router/layouts, deploy mode, optional integrations and lockfile.
|
|
11
|
-
|
|
9
|
+
Approved SA/ADR decisions, scoped requirements, existing conventions and actual Astro versions/output mode.
|
|
12
10
|
## Procedure
|
|
13
|
-
1. Inspect existing
|
|
14
|
-
2.
|
|
15
|
-
3.
|
|
16
|
-
4.
|
|
17
|
-
5. Define route ownership, error/empty/success states and storage/privacy expectations; only add React islands for genuinely stateful interaction.
|
|
18
|
-
6. Design stable boundaries so a heavy tool may later move to independent hosting without making the initial app a complex micro frontend platform.
|
|
19
|
-
7. Follow the Core spec → test → review flow; verify actual build/route behavior with existing project scripts.
|
|
20
|
-
|
|
11
|
+
1. Inspect existing Astro config, routes/layouts, assets and configured commands.
|
|
12
|
+
2. Implement only accepted rendering, component and integration boundaries. Reuse comparable code.
|
|
13
|
+
3. Clarify consequential unresolved choices with SA/owner; do not choose hosting or add backend/DB/frameworks from a recipe.
|
|
14
|
+
4. Verify applicable route/build/browser behavior through authorized host tools and record evidence.
|
|
21
15
|
## Output
|
|
22
|
-
|
|
23
|
-
- Actual test/build evidence, plus deferred infrastructure decisions.
|
|
24
|
-
|
|
16
|
+
Scoped implementation, test evidence and handoff to QA/SA for actual gaps.
|
|
25
17
|
## Constraints
|
|
26
|
-
|
|
27
|
-
- Don't silently add packages, cloud resources, telemetry or external data access.
|
|
28
|
-
- `aih` distributes guidance; it does not scaffold or execute an Astro project.
|
|
18
|
+
No mandatory micro-tools layout, cloud provider or deployment model; preserve approved architecture and user content.
|
|
@@ -6,6 +6,7 @@ description: Build discoverable and accessible Astro utility pages with accurate
|
|
|
6
6
|
# Astro SEO for useful utilities
|
|
7
7
|
|
|
8
8
|
## Input
|
|
9
|
+
Approved SA/ADR decisions for the affected scope, existing project conventions and actual stack versions. This skill implements accepted design; it does not select infrastructure, dependencies or architecture.
|
|
9
10
|
- Target search intent and approved page copy, routes, domain/deployment base URL and localization.
|
|
10
11
|
- Existing metadata, robots, sitemap integration, performance metrics and brand constraints.
|
|
11
12
|
|
|
@@ -33,11 +33,9 @@
|
|
|
33
33
|
"rules/conventions.md"
|
|
34
34
|
],
|
|
35
35
|
"skills": [
|
|
36
|
-
"harness-java-spring-spring-api"
|
|
37
|
-
"harness-java-spring-kafka-outbox",
|
|
38
|
-
"harness-java-spring-database-migration"
|
|
36
|
+
"harness-java-spring-spring-api"
|
|
39
37
|
],
|
|
40
38
|
"verification": "checks/verification.yaml",
|
|
41
39
|
"evaluation": "evals/cases.json",
|
|
42
|
-
"module_version": "1.
|
|
40
|
+
"module_version": "1.2.0"
|
|
43
41
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Persistence
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Use the project's actual database dialect, migration tool and approved data contracts. Align Spring transaction boundaries with accepted business semantics; test rollback and concurrency where relevant. Ask only unresolved deployment/compatibility decisions before schema changes. Do not add a broker, event relay, cache, migration framework or transaction pattern from this adapter. SA assesses those options when requirements demand them.
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Spring performance
|
|
2
2
|
|
|
3
|
-
Inspect query counts
|
|
3
|
+
Inspect actual query counts, execution plans, connection pools and request profiles before changing behavior. Use existing pagination/concurrency settings and measure under relevant load. Propose new caching or asynchronous infrastructure to SA only when evidence shows a requirement; use the chosen project's documentation for implementation details.
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
# Java / Spring Boot adapter
|
|
2
2
|
|
|
3
|
+
## Design authority
|
|
4
|
+
Actual host/user permissions apply. For design within its scope: approved SA/ADR decisions > existing project conventions > adapter defaults. Proposed technologies need alternatives, trade-offs and an owner decision before implementation; accepted choices are reused without asking again. Selecting this adapter does not select any infrastructure or pattern.
|
|
5
|
+
|
|
3
6
|
Read the actual build files, JDK toolchain, Spring BOM, database dialect and local conventions first.
|
|
4
7
|
Prefer the project's Maven/Gradle wrapper. No Spring, Java or dependency upgrades are implied by installation.
|
|
5
8
|
|
|
@@ -12,7 +15,7 @@ For Modulith projects verify module dependencies; use public module APIs, not an
|
|
|
12
15
|
Use explicit transaction boundaries. Test concurrent updates and idempotency for retried writes.
|
|
13
16
|
Use BigDecimal with an explicit rounding policy for money. Use Instant/offset-aware times and an explicit
|
|
14
17
|
business timezone. Avoid accidental N+1 queries and unbounded queries; define pagination and indexes.
|
|
15
|
-
|
|
18
|
+
For messaging or consistency changes, use approved SA contracts and existing project mechanisms. Do not select a messaging pattern from this adapter.
|
|
16
19
|
Retries require bounds and retryable error classification. Async work needs a managed executor.
|
|
17
20
|
|
|
18
21
|
## Contracts and security
|
|
@@ -6,6 +6,7 @@ description: Implement a Spring API with resource-scoped authorization and stabl
|
|
|
6
6
|
# spring-api
|
|
7
7
|
|
|
8
8
|
## Input
|
|
9
|
+
Approved SA/ADR decisions for the affected scope, existing project conventions and actual stack versions. This skill implements accepted design; it does not select infrastructure, dependencies or architecture.
|
|
9
10
|
Approved endpoint contract, actual Spring version, existing controller/service patterns and access policy.
|
|
10
11
|
|
|
11
12
|
## Procedure
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
# Kubernetes adapter
|
|
2
2
|
|
|
3
|
+
## Design authority
|
|
4
|
+
Actual host/user permissions apply. For design within its scope: approved SA/ADR decisions > existing project conventions > adapter defaults. Proposed technologies need alternatives, trade-offs and an owner decision before implementation; accepted choices are reused without asking again. Selecting this adapter does not select any infrastructure or pattern.
|
|
5
|
+
|
|
3
6
|
Use this adapter for manifest, Helm and rollout decisions. Combine with the `devops` capability for broader release/incident workflows. It never grants cluster permissions.
|
|
4
7
|
|
|
5
8
|
Read `rules/architecture.md`, `rules/security.md` and `rules/reliability.md` before applying the
|
|
@@ -6,6 +6,7 @@ description: Review Helm charts, versioned dependencies and environment-aware re
|
|
|
6
6
|
# harness-kubernetes-helm-release
|
|
7
7
|
|
|
8
8
|
## Input
|
|
9
|
+
Approved SA/ADR decisions for the affected scope, existing project conventions and actual stack versions. This skill implements accepted design; it does not select infrastructure, dependencies or architecture.
|
|
9
10
|
- Chart, values overlays, image provenance, namespace and target Kubernetes version.
|
|
10
11
|
|
|
11
12
|
## Procedure
|
|
@@ -6,6 +6,7 @@ description: Plan Kubernetes rollout checks, observable abort gates and recovery
|
|
|
6
6
|
# harness-kubernetes-rollout-safety
|
|
7
7
|
|
|
8
8
|
## Input
|
|
9
|
+
Approved SA/ADR decisions for the affected scope, existing project conventions and actual stack versions. This skill implements accepted design; it does not select infrastructure, dependencies or architecture.
|
|
9
10
|
- Deployment manifest, replica count, traffic patterns, health telemetry, application migration plan.
|
|
10
11
|
|
|
11
12
|
## Procedure
|
|
@@ -6,6 +6,7 @@ description: Review Kubernetes workloads for resources, readiness, security and
|
|
|
6
6
|
# harness-kubernetes-workload-review
|
|
7
7
|
|
|
8
8
|
## Input
|
|
9
|
+
Approved SA/ADR decisions for the affected scope, existing project conventions and actual stack versions. This skill implements accepted design; it does not select infrastructure, dependencies or architecture.
|
|
9
10
|
- Rendered manifests, workload requirements, Kubernetes version and approved environment policy.
|
|
10
11
|
|
|
11
12
|
## Procedure
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
# React Native adapter
|
|
2
2
|
|
|
3
|
+
## Design authority
|
|
4
|
+
Actual host/user permissions apply. For design within its scope: approved SA/ADR decisions > existing project conventions > adapter defaults. Proposed technologies need alternatives, trade-offs and an owner decision before implementation; accepted choices are reused without asking again. Selecting this adapter does not select any infrastructure or pattern.
|
|
5
|
+
|
|
3
6
|
Inspect whether the project uses Expo or bare React Native, its navigation, native modules and supported OS
|
|
4
7
|
versions. Follow the existing package manager and native build toolchain; do not silently migrate architectures.
|
|
5
8
|
|
|
@@ -6,6 +6,7 @@ description: Verify React Native and Expo screens using existing JavaScript, nav
|
|
|
6
6
|
# Mobile behavior testing
|
|
7
7
|
|
|
8
8
|
## Input
|
|
9
|
+
Approved SA/ADR decisions for the affected scope, existing project conventions and actual stack versions. This skill implements accepted design; it does not select infrastructure, dependencies or architecture.
|
|
9
10
|
Changed screen/AC, actual test scripts/runner and navigation setup, affected platforms, native/device
|
|
10
11
|
access, and existing API/storage/permission fixtures.
|
|
11
12
|
|
|
@@ -6,6 +6,7 @@ description: Implement device permissions and deep-link flows safely.
|
|
|
6
6
|
# device-permissions
|
|
7
7
|
|
|
8
8
|
## Input
|
|
9
|
+
Approved SA/ADR decisions for the affected scope, existing project conventions and actual stack versions. This skill implements accepted design; it does not select infrastructure, dependencies or architecture.
|
|
9
10
|
Required device capability, platform support matrix and navigation/access policy.
|
|
10
11
|
|
|
11
12
|
## Procedure
|
|
@@ -6,6 +6,7 @@ description: Implement offline state transitions and safe synchronization in Rea
|
|
|
6
6
|
# offline-sync
|
|
7
7
|
|
|
8
8
|
## Input
|
|
9
|
+
Approved SA/ADR decisions for the affected scope, existing project conventions and actual stack versions. This skill implements accepted design; it does not select infrastructure, dependencies or architecture.
|
|
9
10
|
Offline UX, backend idempotency contract, local data policy and conflict rules.
|
|
10
11
|
|
|
11
12
|
## Procedure
|
|
@@ -6,6 +6,7 @@ description: Implement React Native or Expo screens with existing navigation, fo
|
|
|
6
6
|
# Mobile screen delivery
|
|
7
7
|
|
|
8
8
|
## Input
|
|
9
|
+
Approved SA/ADR decisions for the affected scope, existing project conventions and actual stack versions. This skill implements accepted design; it does not select infrastructure, dependencies or architecture.
|
|
9
10
|
Task/AC and screen/flow notes, API contract, actual Expo/bare setup and router/version, supported
|
|
10
11
|
platforms, and existing navigation/theme/client/storage/test paths.
|
|
11
12
|
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
# React / Next.js adapter
|
|
2
2
|
|
|
3
|
+
## Design authority
|
|
4
|
+
Actual host/user permissions apply. For design within its scope: approved SA/ADR decisions > existing project conventions > adapter defaults. Proposed technologies need alternatives, trade-offs and an owner decision before implementation; accepted choices are reused without asking again. Selecting this adapter does not select any infrastructure or pattern.
|
|
5
|
+
|
|
3
6
|
Inspect package.json, lockfile, router choice, TypeScript settings and project scripts. Do not assume npm,
|
|
4
7
|
App Router or a Next.js version; plain React projects use only the applicable rules.
|
|
5
8
|
|
|
@@ -6,6 +6,7 @@ description: Build accessible React UI states using the existing design system.
|
|
|
6
6
|
# accessible-ui
|
|
7
7
|
|
|
8
8
|
## Input
|
|
9
|
+
Approved SA/ADR decisions for the affected scope, existing project conventions and actual stack versions. This skill implements accepted design; it does not select infrastructure, dependencies or architecture.
|
|
9
10
|
Approved screen/flow, design system components and API contract.
|
|
10
11
|
|
|
11
12
|
## Procedure
|
|
@@ -6,6 +6,7 @@ description: Verify React and Next.js features with user-facing component, integ
|
|
|
6
6
|
# Web behavior testing
|
|
7
7
|
|
|
8
8
|
## Input
|
|
9
|
+
Approved SA/ADR decisions for the affected scope, existing project conventions and actual stack versions. This skill implements accepted design; it does not select infrastructure, dependencies or architecture.
|
|
9
10
|
Changed feature/AC, confirmed package scripts and test configuration, framework/router/version,
|
|
10
11
|
available browser/build access, and the existing fixtures/providers/API test boundary.
|
|
11
12
|
|
|
@@ -6,6 +6,7 @@ description: Implement React or Next.js feature slices with existing routes, com
|
|
|
6
6
|
# Web feature delivery
|
|
7
7
|
|
|
8
8
|
## Input
|
|
9
|
+
Approved SA/ADR decisions for the affected scope, existing project conventions and actual stack versions. This skill implements accepted design; it does not select infrastructure, dependencies or architecture.
|
|
9
10
|
Task/acceptance IDs, approved screen or compact UX notes, API contract, actual framework/router/version,
|
|
10
11
|
and existing convention/component/client/state paths. Read only relevant source and skills.
|
|
11
12
|
|