atris 1.4.1 → 1.4.3

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 (3) hide show
  1. package/atris.md +44 -21
  2. package/bin/atris.js +14 -9
  3. package/package.json +10 -4
package/atris.md CHANGED
@@ -45,11 +45,28 @@ This spec defines how to transform any system (codebase, product, sales process,
45
45
 
46
46
  6. **Output:** `/atris/MAP.md` (target: 300-500 lines for large systems; scale to project size)
47
47
 
48
+ 7. **After MAP.md generation:** Append lightweight project context to agent templates
49
+ - Add `## Project Context` section to each agent (navigator, executor, validator)
50
+ - Include: framework, 3-5 key directories, 3-5 search accelerators
51
+ - Keep it minimal (5-10 lines max per agent) - avoid bloat
52
+ - Format:
53
+ ```markdown
54
+ ---
55
+ ## Project Context (Auto-generated from MAP.md)
56
+ - **Framework:** Next.js 14
57
+ - **Key dirs:** app/, components/, lib/
58
+ - **Search patterns:**
59
+ - Components: `rg "export default" components/`
60
+ - API routes: `rg "export async function" app/api/`
61
+ ```
62
+
48
63
  ---
49
64
 
50
- ## Phase 2: Spawning Foundational Agents
65
+ ## Phase 2: Foundational Agent Templates
66
+
67
+ ATRIS ships with pre-built agent templates in `/atris/agent_team/` (copied during `atris init`). These templates provide battle-tested specs that work out of the box. Each agent has explicit guardrails.
51
68
 
52
- After MAP.md exists, generate agent specs in `/atris/agent_team/` from MAP insights. Each agent has explicit guardrails.
69
+ **Templates included:**
53
70
 
54
71
  ### Agent 1: **navigator.md** (in `/atris/agent_team/`)
55
72
 
@@ -207,20 +224,25 @@ After MAP.md exists, generate agent specs in `/atris/agent_team/` from MAP insig
207
224
 
208
225
  ## Phase 4: Activation & Handoff
209
226
 
210
- **When All Artifacts in `/atris/` Exist:**
227
+ **After `atris init`, your workspace contains:**
211
228
 
212
229
  - ✅ `atris.md` (this spec)
213
- - ✅ `MAP.md` (navigation guide)
214
- - ✅ `agent_team/navigator.md` (question answerer)
215
- - ✅ `agent_team/executor.md` (task executor)
216
- - ✅ `agent_team/validator.md` (quality gatekeeper)
217
- - ✅ `TASK_CONTEXTS.md` (task bank)
230
+ - ✅ `PERSONA.md` (agent communication style)
231
+ - ✅ `GETTING_STARTED.md` (user guide)
232
+ - ✅ `agent_team/navigator.md` (pre-built template)
233
+ - ✅ `agent_team/executor.md` (pre-built template)
234
+ - ✅ `agent_team/validator.md` (pre-built template)
235
+ - ⏳ `MAP.md` (AI agent generates from codebase)
236
+ - ⏳ `TASK_CONTEXTS.md` (AI agent generates from MAP)
237
+
238
+ **Agent Enhancement:**
239
+ After MAP.md generation, agents receive project context injection (framework, key dirs, search patterns). This keeps base templates clean while adding project-specific accelerators.
218
240
 
219
241
  **Agent Behavior Activates Automatically:**
220
242
 
221
243
  | Trigger | Agent | Action |
222
244
  |---------|-------|--------|
223
- | "Where is X?" | navigator | Answers with MAP.md:line reference |
245
+ | "Where is X?" | navigator | Answers with MAP.md:line reference + project patterns |
224
246
  | "Do task Y" | executor | Extracts context, plans execution, cites file:line |
225
247
  | After change | validator | Checks validity, updates docs, blocks unsafe changes |
226
248
  | New agent joins | navigator | Reads MAP.md, immediately productive (no ramp-up) |
@@ -274,13 +296,14 @@ After MAP.md exists, generate agent specs in `/atris/agent_team/` from MAP insig
274
296
 
275
297
  ## Implementation Checklist
276
298
 
277
- - [ ] **Phase 1:** Generate MAP.md on fresh system (5 min)
278
- - [ ] **Phase 2:** Spawn 3 agent specs in agent_team/ (2 min)
279
- - [ ] **Phase 3:** Auto-generate TASK_CONTEXTS.md from MAP insights (2 min)
280
- - [ ] **Phase 4:** Test system (ask navigator a question, watch it cite MAP:line) (1 min)
281
- - [ ] **Ongoing:** Each MAP update triggers TASK_CONTEXTS refresh
299
+ - [ ] **Install:** `npm install -g atris` (instant)
300
+ - [ ] **Init:** `atris init` - creates atris/ with templates (instant)
301
+ - [ ] **Phase 1:** AI agent generates MAP.md from codebase (5 min)
302
+ - [ ] **Phase 3:** AI agent generates TASK_CONTEXTS.md from MAP (2 min)
303
+ - [ ] **Validate:** Test navigator/executor/validator workflows (1 min)
304
+ - [ ] **Ongoing:** Run `atris sync` to get template updates
282
305
 
283
- **Total time to full instrumentation: ~10 minutes**
306
+ **Total time to full instrumentation: ~8 minutes**
284
307
 
285
308
  ---
286
309
 
@@ -306,10 +329,10 @@ atris sync
306
329
 
307
330
  ---
308
331
 
309
- **Status:** Spec finalized. When deployed to a fresh project, agents will:
310
- 1. Map the codebase in <10 minutes
311
- 2. Answer questions with file:line precision
312
- 3. Execute tasks with full context
313
- 4. Maintain docs as code evolves
332
+ **Status:** Production ready. Run `atris init` in any project to get:
333
+ 1. Pre-built agent templates (navigator, executor, validator)
334
+ 2. AI generates MAP.md from your codebase in <5 minutes
335
+ 3. AI generates TASK_CONTEXTS.md with exact file:line context
336
+ 4. Full workflow: activate plan → build → validate
314
337
 
315
- *Drop atris.md anywhere. Agents follow the blueprint. Codebase becomes fully instrumented for AI collaboration.*
338
+ *Install once. Init anywhere. AI agents have instant context. Codebase becomes fully instrumented for AI collaboration.*
package/bin/atris.js CHANGED
@@ -140,19 +140,24 @@ function initAtris() {
140
140
  console.log('✓ Created TASK_CONTEXTS.md placeholder');
141
141
  }
142
142
 
143
- if (!fs.existsSync(navigatorFile)) {
144
- fs.writeFileSync(navigatorFile, '# navigator.md\n\n> Generated by your AI agent after reading atris.md\n\nRun your AI agent with atris.md to populate this file.\n');
145
- console.log(' Created agent_team/navigator.md placeholder');
143
+ // Copy agent templates from package
144
+ const navigatorSource = path.join(__dirname, '..', 'atris', 'agent_team', 'navigator.md');
145
+ const executorSource = path.join(__dirname, '..', 'atris', 'agent_team', 'executor.md');
146
+ const validatorSource = path.join(__dirname, '..', 'atris', 'agent_team', 'validator.md');
147
+
148
+ if (!fs.existsSync(navigatorFile) && fs.existsSync(navigatorSource)) {
149
+ fs.copyFileSync(navigatorSource, navigatorFile);
150
+ console.log('✓ Created agent_team/navigator.md');
146
151
  }
147
152
 
148
- if (!fs.existsSync(executorFile)) {
149
- fs.writeFileSync(executorFile, '# executor.md\n\n> Generated by your AI agent after reading atris.md\n\nRun your AI agent with atris.md to populate this file.\n');
150
- console.log('✓ Created agent_team/executor.md placeholder');
153
+ if (!fs.existsSync(executorFile) && fs.existsSync(executorSource)) {
154
+ fs.copyFileSync(executorSource, executorFile);
155
+ console.log('✓ Created agent_team/executor.md');
151
156
  }
152
157
 
153
- if (!fs.existsSync(validatorFile)) {
154
- fs.writeFileSync(validatorFile, '# validator.md\n\n> Generated by your AI agent after reading atris.md\n\nRun your AI agent with atris.md to populate this file.\n');
155
- console.log('✓ Created agent_team/validator.md placeholder');
158
+ if (!fs.existsSync(validatorFile) && fs.existsSync(validatorSource)) {
159
+ fs.copyFileSync(validatorSource, validatorFile);
160
+ console.log('✓ Created agent_team/validator.md');
156
161
  }
157
162
 
158
163
  // Copy atris.md to the folder
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "atris",
3
- "version": "1.4.1",
3
+ "version": "1.4.3",
4
4
  "description": "Universal system instrumentation for AI agents - works for code, product, sales, and more",
5
5
  "main": "bin/atris.js",
6
6
  "bin": {
7
- "atris": "./bin/atris.js"
7
+ "atris": "bin/atris.js"
8
8
  },
9
9
  "files": [
10
10
  "bin/",
@@ -16,11 +16,17 @@
16
16
  "scripts": {
17
17
  "test": "echo \"Error: no test specified\" && exit 1"
18
18
  },
19
- "keywords": ["ai", "agents", "codebase", "documentation", "automation"],
19
+ "keywords": [
20
+ "ai",
21
+ "agents",
22
+ "codebase",
23
+ "documentation",
24
+ "automation"
25
+ ],
20
26
  "author": "Keshav Rao (atrislabs)",
21
27
  "license": "MIT",
22
28
  "repository": {
23
29
  "type": "git",
24
- "url": "https://github.com/atrislabs/atris.md.git"
30
+ "url": "git+https://github.com/atrislabs/atris.md.git"
25
31
  }
26
32
  }