@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.
Files changed (74) hide show
  1. package/README.md +56 -304
  2. package/bin/eha.js +203 -118
  3. package/docs/templates/project-docs-template/index.md +208 -0
  4. package/docs/templates/project-docs-template/technical-guidelines/index.md +81 -0
  5. package/docs/templates/reusable-prompts/00-project-docs-bootstrap.md +40 -0
  6. package/docs/{vibes → templates}/reusable-prompts/00-project-docs-parity.md +4 -6
  7. package/docs/{vibes → templates}/reusable-prompts/00-project-docs-refresh.md +11 -11
  8. package/docs/{vibes → templates}/reusable-prompts/01-sdd-execute.md +1 -1
  9. package/docs/{vibes → templates}/reusable-prompts/02-sdd-discuss.md +3 -3
  10. package/{.agents/rules/agent.md → docs/templates/rules/agent-rules.md} +7 -12
  11. package/docs/{vibes → templates}/skills/api-design/SKILL.md +14 -25
  12. package/docs/{vibes/skills/full-verification → templates/skills/code-audit}/SKILL.md +36 -54
  13. package/docs/templates/skills/db-schema-design/SKILL.md +120 -0
  14. package/docs/templates/skills/devops-ci-cd/SKILL.md +99 -0
  15. package/docs/templates/skills/observability/SKILL.md +99 -0
  16. package/docs/{vibes/skills/parity → templates/skills/parity-audit}/SKILL.md +26 -52
  17. package/docs/templates/skills/refactor/SKILL.md +100 -0
  18. package/docs/templates/skills/security-audit/SKILL.md +149 -0
  19. package/docs/{vibes/skills/analysis → templates/skills/system-analysis}/SKILL.md +19 -41
  20. package/docs/{vibes/skills/test-authoring → templates/skills/system-tester}/SKILL.md +28 -46
  21. package/docs/templates/skills/ui-ux-design/SKILL.md +102 -0
  22. package/docs/templates/skills/wireframing/SKILL.md +88 -0
  23. package/package.json +4 -6
  24. package/src/engine/index.js +9 -12
  25. package/src/engine/install.js +67 -165
  26. package/src/engine/runtime-adapters.js +266 -50
  27. package/src/engine/skill-registry.js +72 -0
  28. package/src/engine/state.js +29 -7
  29. package/src/engine/workflow-registry.js +14 -23
  30. package/.claude/commands/eha/README.md +0 -3
  31. package/.claude/commands/eha/eha-bootstrap.md +0 -9
  32. package/.claude/commands/eha/eha-discuss.md +0 -9
  33. package/.claude/commands/eha/eha-execute.md +0 -9
  34. package/.claude/commands/eha/eha-parity.md +0 -9
  35. package/.claude/commands/eha/eha-refresh.md +0 -9
  36. package/.claude/commands/eha/eha-verify.md +0 -9
  37. package/.claude/rules/agent-rules.md +0 -64
  38. package/.github/instructions/agent-rules.instructions.md +0 -63
  39. package/.github/instructions/eha-workflows.instructions.md +0 -21
  40. package/docs/eyehateagent-contract.md +0 -475
  41. package/docs/eyehateagent-maintenance.md +0 -103
  42. package/docs/project-docs/changelog.md +0 -299
  43. package/docs/project-docs/foundation/architecture.md +0 -117
  44. package/docs/project-docs/foundation/status.md +0 -32
  45. package/docs/project-docs/foundation/workflow.md +0 -63
  46. package/docs/project-docs/index.md +0 -20
  47. package/docs/project-docs/testing.md +0 -73
  48. package/docs/vibes/project-docs-template/foundation/architecture.md +0 -79
  49. package/docs/vibes/project-docs-template/foundation/changelog.md +0 -53
  50. package/docs/vibes/project-docs-template/foundation/feature-inventory.md +0 -46
  51. package/docs/vibes/project-docs-template/foundation/phases.md +0 -60
  52. package/docs/vibes/project-docs-template/foundation/prd.md +0 -69
  53. package/docs/vibes/project-docs-template/foundation/status.md +0 -57
  54. package/docs/vibes/project-docs-template/foundation/workflow.md +0 -59
  55. package/docs/vibes/project-docs-template/getting-started.md +0 -52
  56. package/docs/vibes/project-docs-template/index.md +0 -66
  57. package/docs/vibes/project-docs-template/operations/ci-cd.md +0 -56
  58. package/docs/vibes/project-docs-template/operations/compliance.md +0 -46
  59. package/docs/vibes/project-docs-template/operations/governance.md +0 -46
  60. package/docs/vibes/project-docs-template/operations/observability.md +0 -53
  61. package/docs/vibes/project-docs-template/operations/production-runbook.md +0 -62
  62. package/docs/vibes/project-docs-template/operations/security.md +0 -49
  63. package/docs/vibes/project-docs-template/technical/api-contract.md +0 -49
  64. package/docs/vibes/project-docs-template/technical/database.md +0 -59
  65. package/docs/vibes/project-docs-template/technical/error-handling.md +0 -54
  66. package/docs/vibes/project-docs-template/technical/internationalization.md +0 -46
  67. package/docs/vibes/project-docs-template/technical/testing.md +0 -57
  68. package/docs/vibes/project-docs-template/technical/ui-ux.md +0 -68
  69. package/docs/vibes/project-docs-template/technical-guidelines/index.md +0 -52
  70. package/docs/vibes/reusable-prompts/00-project-docs-bootstrap.md +0 -59
  71. package/docs/vibes/skills/code-audit/SKILL.md +0 -170
  72. package/docs/vibes/skills/project-elevation/SKILL.md +0 -157
  73. package/docs/vibes/skills/test-authoring/references/patterns.md +0 -116
  74. 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
- ## Documentation and engine repository for AI-agent-assisted project work
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
- ## Table of Contents
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
- npm install
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
- npx @sallmarta/eye-hate-agent doctor
71
- npx @sallmarta/eye-hate-agent bootstrap
16
+ $ npm i -g @sallmarta/eye-hate-agent
17
+ $ eha
72
18
  ```
73
19
 
74
- The published package exposes both `eye-hate-agent` and `eha` as CLI entrypoints. The package-name entrypoint is kept first so bare scoped `npx` resolution prefers `eye-hate-agent`, while installed usage can still use `eha`.
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
- Current runtime support tiers:
23
+ ### 3. Commit the contract
24
+ The projected files (`.claude/`, `.github/`, or `.agents/`) act as your project's AI contract.
77
25
 
78
- - **Claude:** full repo-local command projection under `.claude/commands/eha/`
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
- ## How to Adopt
28
+ ## EHA Commands
84
29
 
85
- Follow this order:
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
- 1. [Choose the desirable topology](#step-1--choose-the-topology)
88
- 2. [Choose the target project category](#step-2--choose-the-project-category)
89
- 3. [Execute the relevant reusable prompt](#step-3--run-the-relevant-starter-reusable-prompt)
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
- ### Step 1 — Choose The Topology
40
+ ---
92
41
 
93
- | Topology | Use when | Status |
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
- > **Note on Agent Platforms:** When copying this repository, you can choose one of `.agents`, `.claude`, or `.github` as desired instead of keeping all three. Typically `.agents` is for Gemini, `.claude` is for Claude, and `.github` is for GitHub Copilot.
44
+ The EHA CLI provides a lightweight, frictionless setup and maintenance toolbelt:
100
45
 
101
- ### Scenario 1 Distributed Self-Contained Repos **(Recommended)**
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
- **Pros:**
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
- **Cons:**
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
- ```text
113
- target-repo/
114
- ├── .agents/
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
- Keep in the target repo:
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
- **Pros:**
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
- **Cons:**
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
- ```text
151
- workspace/
152
- ├── eye-hate-agent/
153
- │ ├── .agents/
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
- Keep in the target repo:
172
-
173
- - `docs/eyehateagent-contract.md`
174
- - `docs/project-docs/`
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
- This scenario is possible, but outside this contract.
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
- - `contract`: the main rules file for this template, especially `docs/eyehateagent-contract.md`
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
- ### Additional Terms
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
- - `stable heading`: a standard heading pattern that prompts and agents are expected to rely on
335
- - `platform instruction surfaces (mirrored rule files)`: matching rule files under `.agents/rules/`, `.github/instructions/`, and `.claude/rules/` that enforce Contract Essentials
336
- - `guideline`: a technical guidance doc under `docs/project-docs/technical-guidelines/`
337
- - `project category`: whether the target repo is a new project, a running project, or a mature or unclear project
338
- - `optional` or `conditional doc`: a non-core doc that exists only when the project needs it
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.