@sallmarta/eye-hate-agent 1.0.2 → 1.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +56 -304
- package/bin/eha.js +203 -118
- package/docs/templates/project-docs-template/index.md +208 -0
- package/docs/templates/project-docs-template/technical-guidelines/index.md +81 -0
- package/docs/templates/reusable-prompts/00-project-docs-bootstrap.md +40 -0
- package/docs/{vibes → templates}/reusable-prompts/00-project-docs-parity.md +4 -6
- package/docs/{vibes → templates}/reusable-prompts/00-project-docs-refresh.md +11 -11
- package/docs/{vibes → templates}/reusable-prompts/01-sdd-execute.md +1 -1
- package/docs/{vibes → templates}/reusable-prompts/02-sdd-discuss.md +3 -3
- package/{.agents/rules/agent.md → docs/templates/rules/agent-rules.md} +7 -12
- package/docs/{vibes → templates}/skills/api-design/SKILL.md +14 -25
- package/docs/{vibes/skills/full-verification → templates/skills/code-audit}/SKILL.md +36 -54
- package/docs/templates/skills/db-schema-design/SKILL.md +120 -0
- package/docs/templates/skills/devops-ci-cd/SKILL.md +99 -0
- package/docs/templates/skills/observability/SKILL.md +99 -0
- package/docs/{vibes/skills/parity → templates/skills/parity-audit}/SKILL.md +26 -52
- package/docs/templates/skills/refactor/SKILL.md +100 -0
- package/docs/templates/skills/security-audit/SKILL.md +149 -0
- package/docs/{vibes/skills/analysis → templates/skills/system-analysis}/SKILL.md +19 -41
- package/docs/{vibes/skills/test-authoring → templates/skills/system-tester}/SKILL.md +28 -46
- package/docs/templates/skills/ui-ux-design/SKILL.md +102 -0
- package/docs/templates/skills/wireframing/SKILL.md +88 -0
- package/package.json +4 -6
- package/src/engine/index.js +9 -12
- package/src/engine/install.js +67 -165
- package/src/engine/runtime-adapters.js +266 -50
- package/src/engine/skill-registry.js +72 -0
- package/src/engine/state.js +29 -7
- package/src/engine/workflow-registry.js +14 -23
- package/.claude/commands/eha/README.md +0 -3
- package/.claude/commands/eha/eha-bootstrap.md +0 -9
- package/.claude/commands/eha/eha-discuss.md +0 -9
- package/.claude/commands/eha/eha-execute.md +0 -9
- package/.claude/commands/eha/eha-parity.md +0 -9
- package/.claude/commands/eha/eha-refresh.md +0 -9
- package/.claude/commands/eha/eha-verify.md +0 -9
- package/.claude/rules/agent-rules.md +0 -64
- package/.github/instructions/agent-rules.instructions.md +0 -63
- package/.github/instructions/eha-workflows.instructions.md +0 -21
- package/docs/eyehateagent-contract.md +0 -475
- package/docs/eyehateagent-maintenance.md +0 -103
- package/docs/project-docs/changelog.md +0 -299
- package/docs/project-docs/foundation/architecture.md +0 -117
- package/docs/project-docs/foundation/status.md +0 -32
- package/docs/project-docs/foundation/workflow.md +0 -63
- package/docs/project-docs/index.md +0 -20
- package/docs/project-docs/testing.md +0 -73
- package/docs/vibes/project-docs-template/foundation/architecture.md +0 -79
- package/docs/vibes/project-docs-template/foundation/changelog.md +0 -53
- package/docs/vibes/project-docs-template/foundation/feature-inventory.md +0 -46
- package/docs/vibes/project-docs-template/foundation/phases.md +0 -60
- package/docs/vibes/project-docs-template/foundation/prd.md +0 -69
- package/docs/vibes/project-docs-template/foundation/status.md +0 -57
- package/docs/vibes/project-docs-template/foundation/workflow.md +0 -59
- package/docs/vibes/project-docs-template/getting-started.md +0 -52
- package/docs/vibes/project-docs-template/index.md +0 -66
- package/docs/vibes/project-docs-template/operations/ci-cd.md +0 -56
- package/docs/vibes/project-docs-template/operations/compliance.md +0 -46
- package/docs/vibes/project-docs-template/operations/governance.md +0 -46
- package/docs/vibes/project-docs-template/operations/observability.md +0 -53
- package/docs/vibes/project-docs-template/operations/production-runbook.md +0 -62
- package/docs/vibes/project-docs-template/operations/security.md +0 -49
- package/docs/vibes/project-docs-template/technical/api-contract.md +0 -49
- package/docs/vibes/project-docs-template/technical/database.md +0 -59
- package/docs/vibes/project-docs-template/technical/error-handling.md +0 -54
- package/docs/vibes/project-docs-template/technical/internationalization.md +0 -46
- package/docs/vibes/project-docs-template/technical/testing.md +0 -57
- package/docs/vibes/project-docs-template/technical/ui-ux.md +0 -68
- package/docs/vibes/project-docs-template/technical-guidelines/index.md +0 -52
- package/docs/vibes/reusable-prompts/00-project-docs-bootstrap.md +0 -59
- package/docs/vibes/skills/code-audit/SKILL.md +0 -170
- package/docs/vibes/skills/project-elevation/SKILL.md +0 -157
- package/docs/vibes/skills/test-authoring/references/patterns.md +0 -116
- package/docs/vibes/skills/test-authoring/references/test-types.md +0 -52
package/README.md
CHANGED
|
@@ -1,339 +1,91 @@
|
|
|
1
1
|
# Eye Hate Agent (EHA)
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
Authored by SuLyAdEe.
|
|
3
|
+
A simple **Spec-Driven Development (SDD)**. Unified set of rules, specialist skills, and dynamic project documentation workflows, standardizing how AI coding agents receive instructions to make collaborative development completely predictable and highly efficient.
|
|
6
4
|
|
|
7
5
|
---
|
|
8
6
|
|
|
9
|
-
##
|
|
10
|
-
|
|
11
|
-
- [Eye Hate Agent](#eye-hate-agent)
|
|
12
|
-
- [Table of Contents](#table-of-contents)
|
|
13
|
-
- [Purpose](#purpose)
|
|
14
|
-
- [How to Adopt](#how-to-adopt)
|
|
15
|
-
- [Step 1 — Choose The Topology](#step-1--choose-the-topology)
|
|
16
|
-
- [Scenario 1 — Distributed Self-Contained Repos](#scenario-1--distributed-self-contained-repos)
|
|
17
|
-
- [Scenario 2 — Shared Template Repo, Local Project Docs](#scenario-2--shared-template-repo-local-project-docs)
|
|
18
|
-
- [Scenario 3 — Centralized Portfolio-Doc Repo](#scenario-3--centralized-portfolio-doc-repo)
|
|
19
|
-
- [Step 2 — Choose The Project Category](#step-2--choose-the-project-category)
|
|
20
|
-
- [Step 3 — Run The Relevant Starter Reusable Prompt](#step-3--run-the-relevant-starter-reusable-prompt)
|
|
21
|
-
- [Key Paths](#key-paths)
|
|
22
|
-
- [Core Docs vs Guidelines](#core-docs-vs-guidelines)
|
|
23
|
-
- [Legend](#legend)
|
|
24
|
-
- [Core Terms](#core-terms)
|
|
25
|
-
- [Additional Terms](#additional-terms)
|
|
26
|
-
|
|
27
|
-
## Purpose
|
|
28
|
-
|
|
29
|
-
Designed to give multiple agents a shared contract, shared rules, and shared planning/doc workflows across app types, while the actual app code lives in your target repo.
|
|
30
|
-
|
|
31
|
-
It provides generic agent rules, reusable skills and prompts, a project-doc contract, and a repo-local EHA engine/CLI for installing runtime surfaces and dispatching workflows.
|
|
32
|
-
|
|
33
|
-
This repository is no longer template-only. It now ships both the reusable template assets and the EHA engine code that materializes runtime-facing surfaces inside the repository.
|
|
34
|
-
|
|
35
|
-
> Note: The template supports multiple topologies and project categories, but the best practices and reusable prompts may differ based on your choice. You can customize everything in this template to fit your needs.
|
|
36
|
-
|
|
37
|
-
1. Use this README first as main guide.
|
|
38
|
-
2. Use `docs/eyehateagent-contract.md` for the main rules and decision order.
|
|
39
|
-
3. Use `docs/eyehateagent-maintenance.md` only when changing this `eye-hate-agent` repository.
|
|
40
|
-
|
|
41
|
-
## Engine Quick Start
|
|
42
|
-
|
|
43
|
-
Planned public npm package name:
|
|
44
|
-
|
|
45
|
-
- `@sallmarta/eye-hate-agent`
|
|
46
|
-
|
|
47
|
-
For local development in this repository:
|
|
7
|
+
## Get Started
|
|
48
8
|
|
|
9
|
+
### 1. Initialize EHA in your project
|
|
10
|
+
Run directly in **your project root**:
|
|
49
11
|
```bash
|
|
50
|
-
|
|
51
|
-
node bin/eha.js install claude copilot
|
|
52
|
-
node bin/eha.js doctor
|
|
53
|
-
node bin/eha.js bootstrap
|
|
12
|
+
$ npx @sallmarta/eye-hate-agent
|
|
54
13
|
```
|
|
55
|
-
|
|
56
|
-
After public npm publishing, the intended install flow is:
|
|
57
|
-
|
|
58
|
-
```bash
|
|
59
|
-
npm install -g @sallmarta/eye-hate-agent
|
|
60
|
-
eha install claude copilot
|
|
61
|
-
eha doctor
|
|
62
|
-
eha bootstrap
|
|
63
|
-
eha discuss "my new feature idea"
|
|
64
|
-
eha verify
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
For one-off runs without a global install:
|
|
68
|
-
|
|
14
|
+
*Or install **globally** and run it:*
|
|
69
15
|
```bash
|
|
70
|
-
|
|
71
|
-
|
|
16
|
+
$ npm i -g @sallmarta/eye-hate-agent
|
|
17
|
+
$ eha
|
|
72
18
|
```
|
|
73
19
|
|
|
74
|
-
|
|
20
|
+
### 2. Trigger your agent
|
|
21
|
+
Once projected, EHA files are immediately active in your IDE. Trigger the workflows using your agent's native slash commands, file mentions, or prompt attachments (read more on [EHA Commands](#eha-commands)).
|
|
75
22
|
|
|
76
|
-
|
|
23
|
+
### 3. Commit the contract
|
|
24
|
+
The projected files (`.claude/`, `.github/`, or `.agents/`) act as your project's AI contract.
|
|
77
25
|
|
|
78
|
-
|
|
79
|
-
- **GitHub Copilot:** guided repo-local instruction projection under `.github/instructions/`
|
|
80
|
-
|
|
81
|
-
Generated runtime outputs stay inside the repository for transparency. Engine state artifacts are written under `.eha/`.
|
|
26
|
+
---
|
|
82
27
|
|
|
83
|
-
##
|
|
28
|
+
## EHA Commands
|
|
84
29
|
|
|
85
|
-
|
|
30
|
+
Once initialized, EHA projects a series of interactive workflows directly into your agent's configuration directory (e.g., `.agents/` or `.github/`). You can trigger these workflows inside your IDE chat using slash commands, file mentions, or prompt attachments:
|
|
86
31
|
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
32
|
+
| Slash Trigger | Primary Purpose |
|
|
33
|
+
| :--- | :--- |
|
|
34
|
+
| **`/eha-bootstrap`** | Initializes the repository's SDD document set, generating a tailored 4-layer taxonomy (Lite, Standard, Enterprise). |
|
|
35
|
+
| **`/eha-refresh`** | Re-aligns and updates the existing documentation set when project scope, stack, or directory layouts shift. |
|
|
36
|
+
| **`/eha-parity`** | Audits the repository to check for document drift, stale headings, structural errors, and ownership mismatches. |
|
|
37
|
+
| **`/sdd-discuss`** | Initiates collaborative scoping and brainstorming sessions to align intent and draft specs before writing code. |
|
|
38
|
+
| **`/sdd-execute`** | Spec-Driven Development execution—translates agreed specifications into robust, verified, and tested code. |
|
|
90
39
|
|
|
91
|
-
|
|
40
|
+
---
|
|
92
41
|
|
|
93
|
-
|
|
94
|
-
| --- | --- | --- |
|
|
95
|
-
| Scenario 1. Distributed self-contained repos | each repo should carry its own contract, rule surfaces, and reusable assets | Supported default |
|
|
96
|
-
| Scenario 2. Shared template repo, local project docs | one shared `eye-hate-agent` repo should serve many repos, while each repo keeps its own main project docs | Supported alternative |
|
|
97
|
-
| Scenario 3. Centralized portfolio-doc repo | one shared repo should own multiple repos' project docs | Outside this contract |
|
|
42
|
+
## EHA CLI Command
|
|
98
43
|
|
|
99
|
-
|
|
44
|
+
The EHA CLI provides a lightweight, frictionless setup and maintenance toolbelt:
|
|
100
45
|
|
|
101
|
-
|
|
46
|
+
| Command | Primary Purpose |
|
|
47
|
+
| :--- | :--- |
|
|
48
|
+
| `eha init` (or `npx...`) | Automatically scans your repo root, lets you choose your target AI agent, and projects standard rules/skills. |
|
|
49
|
+
| `eha init <agent>` | Directly initiates the EHA project setup for a specific agent (e.g. `copilot`, `claude`, `antigravity`) |
|
|
50
|
+
| `eha doctor` | Performs a health check verifying that all projected rules, stubs, and workflows are present and intact. |
|
|
51
|
+
| `eha remove` | Safely deletes EHA's configuration directories, manifest registries, and generated contract files from your repository. |
|
|
102
52
|
|
|
103
|
-
|
|
104
|
-
- **Autonomy:** The AI agent has everything it needs locally. It doesn't rely on cross-workspace permissions to read instructions.
|
|
105
|
-
- **Customizability:** Modify contracts, skills, or prompts safely per project.
|
|
106
|
-
- **Portability:** Agent rules travel seamlessly with the repository.
|
|
53
|
+
---
|
|
107
54
|
|
|
108
|
-
|
|
109
|
-
- **Maintenance:** When `eye-hate-agent` template gets an update, you must manually sync updates to every target repositories.
|
|
110
|
-
- **Drift:** Independent rule tweaks make all target repositories harder to manage over time.
|
|
55
|
+
## Updating
|
|
111
56
|
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
│ └── rules/
|
|
116
|
-
├── .github/
|
|
117
|
-
│ └── instructions/
|
|
118
|
-
├── .claude/
|
|
119
|
-
│ └── rules/
|
|
120
|
-
└── docs/
|
|
121
|
-
├── eyehateagent-contract.md
|
|
122
|
-
├── project-docs/
|
|
123
|
-
└── vibes/
|
|
124
|
-
├── reusable-prompts/
|
|
125
|
-
└── skills/
|
|
57
|
+
When a new version of EHA is released, simply run:
|
|
58
|
+
```bash
|
|
59
|
+
$ eha
|
|
126
60
|
```
|
|
61
|
+
in your repository. The engine will detect the version mismatch automatically, prompt you to regenerate the files **(if needed)**, and update them to the latest standards seamlessly.
|
|
127
62
|
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
- `docs/eyehateagent-contract.md`
|
|
131
|
-
- `.agents/rules/`
|
|
132
|
-
- `.github/instructions/`
|
|
133
|
-
- `.claude/rules/`
|
|
134
|
-
- `docs/project-docs/`
|
|
135
|
-
- `docs/vibes/reusable-prompts/`
|
|
136
|
-
- `docs/vibes/skills/`
|
|
137
|
-
|
|
138
|
-
Remove `docs/eyehateagent-maintenance.md` after setup unless the target is also a template repo.
|
|
139
|
-
|
|
140
|
-
### Scenario 2 — Shared Template Repo, Local Project Docs (Alternative)
|
|
63
|
+
---
|
|
141
64
|
|
|
142
|
-
|
|
143
|
-
- **Single Source of Truth:** Centralized rules and skills instantly update all local projects.
|
|
144
|
-
- **Clean Target Repositories:** Target repositories only hold project docs, not agent-related docs.
|
|
65
|
+
## Uninstallation
|
|
145
66
|
|
|
146
|
-
|
|
147
|
-
- **Dependency:** AI agents require simultaneous read access to the shared `eye-hate-agent` repository. If an agent platform restricts access to outside folders, the agent goes blind.
|
|
148
|
-
- **Rigidity:** Overriding or customizing a shared rule for one target repository may affect all other target repositories. For example, if a target repository needs a unique rule, you can't easily alter the shared rule without affecting other target repositories.
|
|
67
|
+
To completely remove EHA from your project and device:
|
|
149
68
|
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
│ │ └── rules/
|
|
155
|
-
│ ├── .github/
|
|
156
|
-
│ │ └── instructions/
|
|
157
|
-
│ ├── .claude/
|
|
158
|
-
│ │ └── rules/
|
|
159
|
-
│ └── docs/
|
|
160
|
-
│ ├── eyehateagent-contract.md
|
|
161
|
-
│ ├── eyehateagent-maintenance.md
|
|
162
|
-
│ └── vibes/
|
|
163
|
-
│ ├── reusable-prompts/
|
|
164
|
-
│ └── skills/
|
|
165
|
-
└── target-repo/
|
|
166
|
-
└── docs/
|
|
167
|
-
├── eyehateagent-contract.md
|
|
168
|
-
└── project-docs/
|
|
69
|
+
### 1. Remove project files
|
|
70
|
+
Run the following command in your project root to clean up all projected AI files:
|
|
71
|
+
```bash
|
|
72
|
+
$ eha remove
|
|
169
73
|
```
|
|
170
74
|
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
-
|
|
175
|
-
|
|
176
|
-
Keep in the shared `eye-hate-agent` repo:
|
|
177
|
-
|
|
178
|
-
- `.agents/rules/`
|
|
179
|
-
- `.github/instructions/`
|
|
180
|
-
- `.claude/rules/`
|
|
181
|
-
- `docs/vibes/reusable-prompts/`
|
|
182
|
-
- `docs/vibes/skills/`
|
|
183
|
-
|
|
184
|
-
Keep the shared `eye-hate-agent` repo available in the same workspace or other agent-visible context.
|
|
185
|
-
Use local rule mirrors only when an agent platform requires repo-local instruction loading.
|
|
186
|
-
|
|
187
|
-
### Scenario 3 — Centralized Portfolio-Doc Repo (Not Recommended)
|
|
188
|
-
|
|
189
|
-
**Pros:**
|
|
190
|
-
- **Absolute Centralization:** All project docs, rules, and skills exist in exactly one repository.
|
|
191
|
-
- **Cross-Project Visibility:** Easy to enforce portfolio-wide standards and view all project states simultaneously.
|
|
192
|
-
- **Strict Target Isolation:** Target repos hold zero documentation, making it ideal if organizational restrictions forbid placing meta-artifacts inside the codebase.
|
|
193
|
-
|
|
194
|
-
**Cons:**
|
|
195
|
-
- **Contract Violation:** Breaks this template's core assumption that a target repository owns its own docs.
|
|
196
|
-
- **Context Bloat:** Agents must parse through docs for unrelated projects, risking confusion or context limit errors.
|
|
197
|
-
- **Extreme Dependency:** If the central repo breaks or loses access, all target projects lose agent context.
|
|
198
|
-
|
|
199
|
-
```text
|
|
200
|
-
workspace/
|
|
201
|
-
├── eye-hate-agent/
|
|
202
|
-
│ ├── .agents/
|
|
203
|
-
│ │ └── rules/
|
|
204
|
-
│ ├── .github/
|
|
205
|
-
│ │ └── instructions/
|
|
206
|
-
│ ├── .claude/
|
|
207
|
-
│ │ └── rules/
|
|
208
|
-
│ └── docs/
|
|
209
|
-
│ ├── eyehateagent-contract.md
|
|
210
|
-
│ ├── eyehateagent-maintenance.md
|
|
211
|
-
│ ├── vibes/
|
|
212
|
-
│ │ ├── reusable-prompts/
|
|
213
|
-
│ │ └── skills/
|
|
214
|
-
│ ├── project-docs-target-repo-a/
|
|
215
|
-
│ └── project-docs-target-repo-b/
|
|
216
|
-
├── target-repo-a/
|
|
217
|
-
└── target-repo-b/
|
|
75
|
+
### 2. Uninstall the CLI globally
|
|
76
|
+
To completely remove the CLI from your device, run:
|
|
77
|
+
```bash
|
|
78
|
+
$ npm uninstall -g @sallmarta/eye-hate-agent
|
|
218
79
|
```
|
|
219
80
|
|
|
220
|
-
|
|
221
|
-
Use it only if you intentionally redesign ownership so one repo owns multiple repos' project docs.
|
|
222
|
-
|
|
223
|
-
### Step 2 — Choose The Project Category
|
|
224
|
-
|
|
225
|
-
| Project category | Scenario 1 | Scenario 2 |
|
|
226
|
-
| --- | --- | --- |
|
|
227
|
-
| New project | copy the local template surfaces, create the first project docs, then run bootstrap | keep the local contract plus project docs, keep reusable assets shared, then run bootstrap from the shared repo |
|
|
228
|
-
| Running project | keep the existing project docs and run refresh | keep the existing project docs and run refresh from the shared repo |
|
|
229
|
-
| Mature or unclear project | run parity first, then refresh | run parity from the shared repo against the local project docs, then refresh |
|
|
230
|
-
|
|
231
|
-
Scenario 3 has no standard project-category flow because it is outside this contract.
|
|
232
|
-
|
|
233
|
-
Always keep these required project docs in the target repo:
|
|
234
|
-
|
|
235
|
-
- `foundation/prd.md`
|
|
236
|
-
- `foundation/architecture.md`
|
|
237
|
-
- `technical/testing.md`
|
|
238
|
-
- `foundation/workflow.md`
|
|
239
|
-
- `foundation/status.md`
|
|
240
|
-
|
|
241
|
-
Recommended next docs for most target repos:
|
|
242
|
-
|
|
243
|
-
- `foundation/changelog.md`
|
|
244
|
-
- `getting-started.md`
|
|
245
|
-
|
|
246
|
-
Optional docs when they add durable value:
|
|
247
|
-
|
|
248
|
-
- `feature-inventory.md`
|
|
249
|
-
- `production-runbook.md`
|
|
250
|
-
|
|
251
|
-
When optional or conditional regular docs are active in a target repo, declare them in `docs/project-docs/index.md`.
|
|
252
|
-
When guideline docs are active in a target repo, declare them in `docs/project-docs/technical-guidelines/index.md`.
|
|
253
|
-
|
|
254
|
-
Recommended technical-guidance layer for a fully documented repo when those domains are relevant:
|
|
255
|
-
|
|
256
|
-
- `technical-guidelines/index.md`
|
|
257
|
-
- guideline docs listed as active in that registry, such as `technical-guidelines/api.md`, `technical-guidelines/database.md`, and `technical-guidelines/code-style.md`
|
|
258
|
-
|
|
259
|
-
### Step 3 — Run The Relevant Starter Reusable Prompt
|
|
260
|
-
|
|
261
|
-
| Better for | Start with | Repository state |
|
|
262
|
-
| --- | --- | --- |
|
|
263
|
-
| New project | `00-project-docs-bootstrap.md` | empty or nearly empty repo with only a brief |
|
|
264
|
-
| Running project | `00-project-docs-refresh.md` | existing repo where project docs already exist but are outdated |
|
|
265
|
-
| Running or mature with no docs | `00-project-docs-bootstrap.md` | existing codebase but no documentation; agent inspects code, comments, configs, tests, and structure as primary input |
|
|
266
|
-
| Mature with unclear docs | `00-project-docs-parity.md` | existing repo with contradictions, stale summaries, or unclear doc responsibilities |
|
|
267
|
-
| Mature with strong docs | `00-project-docs-parity.md`, then `00-project-docs-refresh.md` | mature repo with a strong pre-existing documentation system |
|
|
268
|
-
|
|
269
|
-
> **When to run parity first:** docs conflict, summaries look stale, doc ownership is unclear, legacy docs need promotion into `guidelines/` or `phases/`, or the current code disagrees with the docs. Classify legacy artifacts by governed concern, not by legacy name. If parity finds a code-vs-doc conflict with no explicit authority order, have the agent ask before assuming. Run refresh only after parity resolves ownership.
|
|
270
|
-
|
|
271
|
-
After choosing a prompt, keep these rules in mind:
|
|
272
|
-
|
|
273
|
-
- **Legacy docs exist:** move them into `docs-legacy/` or similar, then run parity followed by refresh. Classify legacy names (`epic`, `roadmap`, `protocol`, `standard`, etc.) by content and state the intended active owner explicitly.
|
|
274
|
-
- **No docs exist:** run bootstrap and let the agent mine the codebase for domain knowledge, including custom sections beyond template headings.
|
|
275
|
-
- **Active docs go in** `docs/project-docs/`. Legacy folders stay for history and lookup only.
|
|
276
|
-
- **Valuable knowledge** from legacy docs or code that doesn't fit standard template headings should be preserved as custom sections or new files. The agent should ask if placement is ambiguous.
|
|
277
|
-
|
|
278
|
-
**Example:** repo has `README.md` setup notes plus older architecture and testing docs → move old docs into `docs-legacy/`, run parity to map them to `getting-started.md`, `architecture.md`, and `testing.md`, then run refresh to merge the still-valid parts.
|
|
279
|
-
|
|
280
|
-
**Example prompts:**
|
|
281
|
-
|
|
282
|
-
- `Read docs/eyehateagent-contract.md, inspect docs-legacy/ as reference input, classify legacy docs by content, and execute 00-project-docs-refresh.md. Promote legacy guideline or phase material into docs/project-docs/technical-guidelines/ and docs/project-docs/phases/.`
|
|
283
|
-
- `Read docs/eyehateagent-contract.md, execute 00-project-docs-parity.md against docs-legacy/, docs/project-docs/, and relevant code. If code and docs conflict, ask before assuming. Then execute 00-project-docs-refresh.md using that ownership map.`
|
|
284
|
-
|
|
285
|
-
If more template prompts are added later, start here unless another prompt is clearly a better fit.
|
|
286
|
-
|
|
287
|
-
Template extension follows a different path:
|
|
288
|
-
|
|
289
|
-
- add known optional regular doc types in `docs/vibes/project-docs-template/index.md`
|
|
290
|
-
- add known guideline types in `docs/vibes/project-docs-template/technical-guidelines/index.md`
|
|
291
|
-
- add or update a starter template file only when a reusable scaffold would still provide durable value
|
|
292
|
-
|
|
293
|
-
## Key Paths
|
|
294
|
-
|
|
295
|
-
| Area | Path | Role |
|
|
296
|
-
| --- | --- | --- |
|
|
297
|
-
| README | `README.md` | main human guide and adoption entry point |
|
|
298
|
-
| Contract | `docs/eyehateagent-contract.md` | main template rules, doc responsibilities, decision order, and adoption rules |
|
|
299
|
-
| Maintenance | `docs/eyehateagent-maintenance.md` | template-repo-only maintenance workflow |
|
|
300
|
-
| Project docs | `docs/project-docs/` | main project-specific docs |
|
|
301
|
-
| Guideline docs | `docs/project-docs/technical-guidelines/` | technical guidance docs for the target repo |
|
|
302
|
-
| Optional-doc index | `docs/project-docs/index.md` | main index file for active optional and conditional regular docs |
|
|
303
|
-
| Guideline index | `docs/project-docs/technical-guidelines/index.md` | main index file for active guideline docs |
|
|
304
|
-
| Reusable prompts | `docs/vibes/reusable-prompts/` | bootstrap, refresh, and parity workflows |
|
|
305
|
-
| Skills | `docs/vibes/skills/` | reusable procedures for analysis, testing, auditing, and design |
|
|
306
|
-
| Starter templates | `docs/vibes/project-docs-template/` | reusable starter scaffolds for docs and guidelines |
|
|
307
|
-
|
|
308
|
-
For template extension, add known optional regular doc types in `docs/vibes/project-docs-template/index.md` and known guideline types in `docs/vibes/project-docs-template/technical-guidelines/index.md`.
|
|
309
|
-
If a new regular doc type needs brand-new standard headings, update `docs/eyehateagent-contract.md` first.
|
|
310
|
-
|
|
311
|
-
## Core Docs vs Guidelines
|
|
312
|
-
|
|
313
|
-
Use the regular docs under `docs/project-docs/` for the general picture of the repository or project, such as scope, architecture, tech stack, business process, testing, and roadmap.
|
|
314
|
-
|
|
315
|
-
Use `docs/project-docs/technical-guidelines/` for technical specs and rules, such as API, database, UI, logging, or code style.
|
|
316
|
-
|
|
317
|
-
A target repo is fully documented when it has both: the general project docs plus the technical guidelines it actually needs.
|
|
318
|
-
|
|
319
|
-
## Legend
|
|
320
|
-
|
|
321
|
-
### Core Terms
|
|
81
|
+
---
|
|
322
82
|
|
|
323
|
-
|
|
324
|
-
- `owner doc`: the main doc that should hold the real information for one topic
|
|
325
|
-
- `active truth`: the docs agents should trust first as the current source of truth, usually `docs/project-docs/`
|
|
326
|
-
- `reusable prompt`: a reusable workflow file under `docs/vibes/reusable-prompts/`, such as bootstrap, refresh, or parity
|
|
327
|
-
- `skill`: a reusable expert procedure under `docs/vibes/skills/`
|
|
328
|
-
- `registry`: an index file that lists active optional docs or guidelines, such as `docs/project-docs/index.md`
|
|
329
|
-
- `topology` or `scenario`: the layout you choose for where template assets and project docs live
|
|
330
|
-
- `docs-legacy` or `reference input`: old docs kept only for migration or reference, not as the active source of truth
|
|
83
|
+
## EHA Philosophy
|
|
331
84
|
|
|
332
|
-
|
|
85
|
+
Eye Hate Agent is built upon a core set of operational beliefs designed to optimize the synergy between human developers and AI coding agents:
|
|
333
86
|
|
|
334
|
-
-
|
|
335
|
-
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
- `
|
|
339
|
-
- `starter template`: a reusable scaffold or example under `docs/vibes/project-docs-template/`
|
|
87
|
+
1. **Readability First (Dual-Audience Design)**: Every registry, template, and workspace document generated by EHA strictly adheres to standard markdown structures, numbered stable headings, and clean tables. This ensures maximum readability for humans while granting AI agents 100% syntactic parsing clarity (completely eliminating context loss).
|
|
88
|
+
2. **Flexible, Non-Deterministic Context**: EHA documents define clear constraints, design parameters, and business logic (specific) but avoid locking implementation down into rigid boilerplate (generic and non-deterministic). This allows both developers and agents to exercise active engineering judgment and choose the best implementation pathways.
|
|
89
|
+
3. **Zero Agent Hallucination**: By anchoring AI agents to EHA's Single Master Registry catalog (`index.md`) and a strict 4-layer folder structure, EHA eliminates path hallucination, stale references, and prompt redundancy. Agents always know exactly where to read and write.
|
|
90
|
+
4. **Brainstorming & Discussion are Sacred**: Specifications are never written in isolation. EHA integrates a dedicated discuss loop (`02-sdd-discuss.md`), establishing collaborative brainstorming as the mandatory first step to align human intent with agent understanding before any code is generated.
|
|
91
|
+
5. **Native Agile & Scrum Alignment**: EHA is built for real-world software delivery. With structured sprint and epic trackers (`foundation/phases.md`, `foundation/status.md`), EHA fits seamlessly into standard corporate Agile/Scrum lifecycles, enabling agents to act as high-velocity scrum contributors.
|