atris 3.58.7 → 3.59.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/AGENTS.md +3 -2
- package/GETTING_STARTED.md +2 -2
- package/PERSONA.md +11 -11
- package/README.md +1 -1
- package/atris/GEMINI.md +7 -6
- package/atris/PERSONA.md +4 -4
- package/atris/features/README.md +77 -6
- package/atris/skills/README.md +44 -15
- package/atris/skills/aeo/SKILL.md +10 -10
- package/atris/skills/atris/SKILL.md +1 -1
- package/atris/skills/engines/SKILL.md +69 -50
- package/atris/skills/meta/SKILL.md +4 -4
- package/bin/atris.js +8 -6
- package/commands/aeo.js +9 -12
- package/commands/analytics.js +8 -11
- package/commands/autopilot.js +79 -8
- package/commands/avail.js +1 -1
- package/commands/brain.js +3 -1
- package/commands/business.js +13 -8
- package/commands/clean.js +17 -0
- package/commands/close.js +2 -1
- package/commands/computer.js +15 -10
- package/commands/context-sync.js +3 -3
- package/commands/doc-health.js +55 -2
- package/commands/engine.js +384 -4
- package/commands/experiments.js +13 -4
- package/commands/host.js +53 -0
- package/commands/improve.js +1 -1
- package/commands/integrations.js +2 -5
- package/commands/learn.js +1 -1
- package/commands/member.js +231 -53
- package/commands/mission.js +129 -19
- package/commands/one-lap.js +58 -3
- package/commands/pack.js +2 -2
- package/commands/probe.js +11 -5
- package/commands/pull.js +1 -1
- package/commands/push.js +1 -1
- package/commands/rainmaker.js +3 -16
- package/commands/run.js +4 -1
- package/commands/scout.js +1 -1
- package/commands/search.js +5 -3
- package/commands/spaceship.js +1 -1
- package/commands/stream.js +27 -2
- package/commands/study.js +15 -9
- package/commands/sync.js +1 -1
- package/commands/task.js +13 -2
- package/commands/unknowns.js +5 -0
- package/commands/verify.js +12 -4
- package/commands/visualize.js +20 -3
- package/commands/workflow.js +23 -7
- package/lib/codex-flight.js +28 -5
- package/lib/dispatch-scout.js +31 -22
- package/lib/engine-registry.js +1482 -13
- package/lib/feedback-triage.js +2 -0
- package/lib/fleet.js +111 -12
- package/lib/host.js +336 -0
- package/lib/improve-vitals-html.js +3 -2
- package/lib/known-commands.js +1 -1
- package/lib/lesson-contradiction.js +2 -2
- package/lib/map-refs.js +226 -0
- package/lib/member-engine.js +253 -0
- package/lib/mission-room.js +4 -4
- package/lib/noninteractive.js +15 -4
- package/lib/policy-lessons.js +1 -1
- package/lib/receipt-block.js +137 -28
- package/lib/roster-markdown.js +206 -0
- package/lib/roster-models.js +179 -0
- package/lib/runner-command.js +95 -15
- package/lib/scorecard.js +4 -4
- package/lib/self-drive.js +9 -1
- package/lib/sleep-sync.js +11 -0
- package/lib/state-detection.js +28 -9
- package/lib/task-db.js +3 -2
- package/lib/todo-fallback.js +1 -1
- package/lib/wish-audit.js +10 -6
- package/lib/wish-delegate.js +29 -5
- package/mcp/atris-mcp/index.mjs +77 -24
- package/package.json +2 -5
- package/scripts/det/det.js +2 -2
- package/scripts/det/pr-description.js +2 -2
- package/scripts/det/test.js +2 -2
- package/templates/members/host/MEMBER.md +23 -0
- package/templates/members/host/MISSION.md +11 -0
- package/templates/members/host/SOUL.md +7 -0
- package/templates/members/host/context/why.md +3 -0
- package/templates/members/host/goals.json +5 -0
- package/templates/members/host/goals.md +3 -0
- package/templates/members/host/skills/host/SKILL.md +13 -0
- package/utils/api.js +1 -1
- package/utils/auth.js +17 -7
- package/utils/backend-root.js +31 -0
- package/utils/config.js +5 -4
- package/utils/owner-identity.js +61 -0
- package/atris/policies/LESSONS.md +0 -13
- package/atris/skills/autopilot/atris-autopilot.md +0 -71
package/AGENTS.md
CHANGED
|
@@ -171,8 +171,9 @@ named none. These rules are the difference, in priority order:
|
|
|
171
171
|
7. **Final report = files changed + verify command + its exact exit/output.**
|
|
172
172
|
Judges read the worktree diff, not your prose; an empty report with a clean
|
|
173
173
|
diff beats a confident report with no diff.
|
|
174
|
-
8. **Update
|
|
175
|
-
|
|
174
|
+
8. **Update the map sections you touched:** routing rows in `atris/MAP.md`,
|
|
175
|
+
file:line refs in `atris/refs/MAP-NOTES.md` (refs drift on their own clock;
|
|
176
|
+
stale refs contradict closed lessons for months).
|
|
176
177
|
9. **Real runtime over mocks:** if you fixed live behavior, the regression test
|
|
177
178
|
reproduces it against the real runtime, not a mock that can stay green
|
|
178
179
|
through breakage.
|
package/GETTING_STARTED.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Getting Started with Atris
|
|
2
2
|
|
|
3
|
-
Atris turns any folder into a workspace that gets better over time.
|
|
3
|
+
Atris turns any folder into a workspace that gets better over time. It works with any coding agent.
|
|
4
4
|
|
|
5
5
|
## Install
|
|
6
6
|
|
|
@@ -71,7 +71,7 @@ In your coding agent, say `/endgame` or describe where you want to end up. The s
|
|
|
71
71
|
atris autopilot --auto --iterations=5
|
|
72
72
|
```
|
|
73
73
|
|
|
74
|
-
Or in your coding agent, say `/loop` to schedule it
|
|
74
|
+
Or in your coding agent, say `/loop` to schedule it every 13 minutes.
|
|
75
75
|
|
|
76
76
|
The loop runs until the goal is done, then picks the next one from scorecards + inbox.
|
|
77
77
|
|
package/PERSONA.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# PERSONA.md
|
|
1
|
+
# PERSONA.md: Atris Agent Personality
|
|
2
2
|
|
|
3
3
|
This defines how Atris agents communicate, decide, and work.
|
|
4
4
|
|
|
@@ -28,21 +28,17 @@ This defines how Atris agents communicate, decide, and work.
|
|
|
28
28
|
|
|
29
29
|
## Core Workflow
|
|
30
30
|
|
|
31
|
-
**Read before you act.** Before planning or building, read the relevant files. Understand the current state. Your first action in any new area is always reconnaissance
|
|
31
|
+
**Read before you act.** Before planning or building, read the relevant files. Understand the current state. Your first action in any new area is always reconnaissance, not execution.
|
|
32
32
|
|
|
33
|
-
**
|
|
33
|
+
**Ask for intent when it's fuzzy or the blast radius is real.** A vague brief gets 2-3 named interpretations with a recommendation, not open questions. Small, reversible, clearly-scoped work: act, then report. Standing autonomy (autoland, push-asap) means asking permission for routine work is a failure smell, not politeness.
|
|
34
34
|
|
|
35
|
-
**Use ASCII visualization to confirm understanding:**
|
|
35
|
+
**Use ASCII visualization to confirm understanding when a plan is worth confirming:**
|
|
36
36
|
- **UI elements:** Show design using ASCII
|
|
37
37
|
- **Backend:** Use arrows, diagrams, logic gates
|
|
38
38
|
- **Databases:** Tables and graphs showing relationships
|
|
39
39
|
- **Other cases:** Use best judgment
|
|
40
40
|
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
Then go 3-4 sentences one by one through each task.
|
|
44
|
-
|
|
45
|
-
Once every task is confirmed, create a plan.
|
|
41
|
+
A one-file fix needs no diagram; a new surface or cross-system change does.
|
|
46
42
|
|
|
47
43
|
**If a task is too big, break it down.** One job per task. If you can't describe "done" in one sentence, decompose it. Small precise tasks compound into big results.
|
|
48
44
|
|
|
@@ -56,9 +52,13 @@ We can always add layer by layer.
|
|
|
56
52
|
|
|
57
53
|
## Communication Style
|
|
58
54
|
|
|
59
|
-
**
|
|
55
|
+
**Talk like a person.** Every message the operator reads: plain words, what happened and what it means for them, cause and effect. Not the machinery.
|
|
56
|
+
|
|
57
|
+
**No codes in the message body.** No task ids, branch names, commit hashes, PR numbers, or system nouns (worktree, verifier, projection, tick). If the reader needs a command, ONE copyable line at the end. Insider terms get defined in the same breath or cut.
|
|
58
|
+
|
|
59
|
+
**Lead with the outcome.** Complete sentences, one or two per paragraph, blank line between. No headers, bullet stacks, or tables in chat replies. Detail lives in files; offer "want the detail?" instead of dumping it.
|
|
60
60
|
|
|
61
|
-
|
|
61
|
+
**The test before sending:** read it fried at 2am. If decoding takes work, rewrite it.
|
|
62
62
|
|
|
63
63
|
If something is slop, call it out. Optimize ruthlessly.
|
|
64
64
|
|
package/README.md
CHANGED
|
@@ -260,7 +260,7 @@ atris business record atris/reports/2026-04-12-operator-recap.md --outcome mixed
|
|
|
260
260
|
- `atris codex-goal` is the read-only bridge for native Codex `/goal`: `status` inspects the live goal database, while the legacy `reset` command now refuses every mutation. Active tasks continue in place; completed tasks retain their final goal, and new work or recurring monitors use a new dedicated Codex task.
|
|
261
261
|
- `atris task` keeps durable local task state and append-only events for agents; `atris/TODO.md` is just a regenerated readable board. Run the loop with `atris task new`, `delegate "..." --to <owner>`, `next`, `say`, and `ready <id> --proof "..."`; human approval is `atris task accept <id>` (moves to Done, awards Career XP) or `revise <id> --note "..."`. Final task transitions also append the general daily log and, when a real `atris/team/<member>/MEMBER.md` matches the task owner, that member's daily log. Add `--json` for headless agents, `atris task serve` for the local board, and `atris task show <ref>` / `events --all` for the full ledger. Commands accept semantic refs (`OBL-18`), full IDs, or any unique prefix. In cloud business workspaces, Supabase `tasks` is the source of truth and Swarlo the live claim layer.
|
|
262
262
|
- `atris mission` is the durable autonomy layer: start with an owner, verifier, runner, and stop condition; record bounded work with `mission tick`; close with `mission complete` only after proof. Runners include `manual`, `claude`, `atris2`, and `codex_goal`.
|
|
263
|
-
- `atris pulse` is the OS-cron heartbeat for overnight self-improvement. Use `atris pulse status`, `tick`, `run`, `install --cadence "<cron>" --days 7 --verify "npm test" --model claude-opus-
|
|
263
|
+
- `atris pulse` is the OS-cron heartbeat for overnight self-improvement. Use `atris pulse status`, `tick`, `run`, `install --cadence "<cron>" --days 7 --verify "npm test" --model claude-opus-5-5`, and `uninstall`.
|
|
264
264
|
- `atris experiments` runs small test packs in `atris/experiments/`
|
|
265
265
|
- `atris pull` and `atris push` sync cloud workspaces and journals
|
|
266
266
|
- `atris live` keeps a business brain fresh by checking/fixing the workspace, pushing local state, pulling cloud state, and pushing again after local changes go quiet
|
package/atris/GEMINI.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
# GEMINI.md
|
|
1
|
+
# GEMINI.md: Atris Project Instructions
|
|
2
2
|
|
|
3
3
|
You are running inside **Atris**, an AI workspace operating system.
|
|
4
4
|
|
|
5
|
-
## FIRST MESSAGE
|
|
5
|
+
## FIRST MESSAGE: Boot Sequence
|
|
6
6
|
|
|
7
7
|
**Before your first response, run this command and display its full output:**
|
|
8
8
|
|
|
@@ -27,10 +27,11 @@ This is the Atris boot sequence. Show the output to the user, then respond natur
|
|
|
27
27
|
|
|
28
28
|
## Core Files
|
|
29
29
|
|
|
30
|
-
- `atris/MAP.md
|
|
31
|
-
- `atris
|
|
32
|
-
- `atris/
|
|
33
|
-
- `atris/
|
|
30
|
+
- `atris/MAP.md`: navigation (use file:line references)
|
|
31
|
+
- `atris task` - the source of truth for work: current tasks, claims, dialogue, and proof
|
|
32
|
+
- `atris/TODO.md`: rendered/legacy task view only
|
|
33
|
+
- `atris/logs/YYYY/YYYY-MM-DD.md`: journal (Inbox + Completed)
|
|
34
|
+
- `atris/atris.md`: protocol/spec
|
|
34
35
|
|
|
35
36
|
## Default Loop
|
|
36
37
|
|
package/atris/PERSONA.md
CHANGED
|
@@ -6,7 +6,7 @@ This defines how Atris agents communicate, decide, and work.
|
|
|
6
6
|
|
|
7
7
|
## MAPFIRST (Non-Negotiable)
|
|
8
8
|
|
|
9
|
-
**Before searching for
|
|
9
|
+
**Before searching for anything in the codebase:**
|
|
10
10
|
|
|
11
11
|
```
|
|
12
12
|
1. READ atris/MAP.md first
|
|
@@ -20,7 +20,7 @@ This defines how Atris agents communicate, decide, and work.
|
|
|
20
20
|
**Violations:**
|
|
21
21
|
- ❌ Running grep/ripgrep before checking MAP.md
|
|
22
22
|
- ❌ Searching multiple files when MAP.md has the answer
|
|
23
|
-
- ❌ Finding something via grep and
|
|
23
|
+
- ❌ Finding something via grep and not updating MAP.md
|
|
24
24
|
|
|
25
25
|
**MAP.md is truth. Check it first. Always.**
|
|
26
26
|
|
|
@@ -86,7 +86,7 @@ Delete when done. Clean workspace = clear mind.
|
|
|
86
86
|
|
|
87
87
|
## Collaboration
|
|
88
88
|
|
|
89
|
-
**Trust the system.** MAP.md is truth.
|
|
89
|
+
**Trust the system.** MAP.md is truth. `atris task` is the source of truth for work; `TODO.md` is the rendered view.
|
|
90
90
|
|
|
91
91
|
Navigator finds, executor builds, validator verifies. Stay in your lane.
|
|
92
92
|
|
|
@@ -112,7 +112,7 @@ Mistakes are fine if you learn and fix quickly.
|
|
|
112
112
|
|
|
113
113
|
❌ Make assumptions without checking MAP.md
|
|
114
114
|
|
|
115
|
-
❌ Leave TODOs scattered in code (put them in
|
|
115
|
+
❌ Leave TODOs scattered in code (put them in `atris task`)
|
|
116
116
|
|
|
117
117
|
❌ Overthink simple problems
|
|
118
118
|
|
package/atris/features/README.md
CHANGED
|
@@ -13,7 +13,8 @@ atris/features/
|
|
|
13
13
|
├── _templates/ # Templates for new features
|
|
14
14
|
│ ├── idea.md.template # Problem, solution, visualization
|
|
15
15
|
│ ├── build.md.template # Step-by-step build instructions
|
|
16
|
-
│
|
|
16
|
+
│ ├── validate.md.template # Proof it works (or didn't)
|
|
17
|
+
│ └── changelog.md.template # Release notes entry
|
|
17
18
|
├── feature-name-1/
|
|
18
19
|
│ ├── idea.md # Why we're building this
|
|
19
20
|
│ ├── build.md # How to build it
|
|
@@ -49,7 +50,7 @@ cp atris/features/_templates/validate.md.template atris/features/your-feature-na
|
|
|
49
50
|
# Fill in the templates
|
|
50
51
|
# Edit idea.md (problem, solution, visualization)
|
|
51
52
|
# Edit build.md (step-by-step implementation)
|
|
52
|
-
# Edit validate.md (proof it works
|
|
53
|
+
# Edit validate.md (proof it works, filled by validator)
|
|
53
54
|
```
|
|
54
55
|
|
|
55
56
|
---
|
|
@@ -68,7 +69,7 @@ cp atris/features/_templates/validate.md.template atris/features/your-feature-na
|
|
|
68
69
|
3. Updates status as work progresses
|
|
69
70
|
|
|
70
71
|
**Validator Agent (validate.md):**
|
|
71
|
-
1. Fills in `validate.md
|
|
72
|
+
1. Fills in `validate.md`: runs every check, records pass/fail
|
|
72
73
|
2. If all pass → status "complete", lessons learned to journal
|
|
73
74
|
3. If any fail → status stays "in-progress", lessons learned to journal
|
|
74
75
|
4. Updates MAP.md if needed
|
|
@@ -118,7 +119,7 @@ Local-first project wiki with cloud opt-in
|
|
|
118
119
|
- **Completed:** 2026-04-07
|
|
119
120
|
|
|
120
121
|
#### self-improving-loop
|
|
121
|
-
Make Atris recursive
|
|
122
|
+
Make Atris recursive: validate.md lessons feed back into the next idea.md
|
|
122
123
|
- **Files:** atris/lessons.md (new), atris.md, atris/team/navigator/MEMBER.md, atris/team/validator/MEMBER.md, atris/MAP.md
|
|
123
124
|
- **Status:** complete
|
|
124
125
|
- **Keywords:** recursion, lessons, feedback-loop, self-improving, lessons.md
|
|
@@ -133,7 +134,7 @@ Connect lessons.md and validate.md to every CLI command and doc that references
|
|
|
133
134
|
- **What:** 8 surgical edits to wire lessons.md and validate.md into init, plan, review, status, docs, and spec
|
|
134
135
|
- **Completed:** 2026-02-09
|
|
135
136
|
|
|
136
|
-
#### brainstorm
|
|
137
|
+
#### brainstorm: v2.0.0
|
|
137
138
|
Conversational exploration mode for uncertain ideas
|
|
138
139
|
- **Files:** bin/atris.js, atris/atris.md, atris/PERSONA.md, GETTING_STARTED.md, README.md, atris/MAP.md
|
|
139
140
|
- **Status:** complete
|
|
@@ -142,7 +143,7 @@ Conversational exploration mode for uncertain ideas
|
|
|
142
143
|
- **Why:** Users need supportive thinking partner when uncertain about requirements
|
|
143
144
|
- **Completed:** 2025-11-11 (shipped in v2.0.0)
|
|
144
145
|
|
|
145
|
-
#### cli-ux-simplification
|
|
146
|
+
#### cli-ux-simplification: v2.0.0
|
|
146
147
|
Simplified CLI surface around the core workflow and aligned internal artifacts.
|
|
147
148
|
- **Files:** bin/atris.js, commands/init.js, commands/workflow.js, commands/status.js, commands/brainstorm.js, lib/state-detection.js, atris.md, atris/atris.md, GETTING_STARTED.md, atris/GETTING_STARTED.md, AGENT.md, CLAUDE.md, atris/PERSONA.md, PERSONA.md
|
|
148
149
|
- **Status:** complete
|
|
@@ -151,6 +152,76 @@ Simplified CLI surface around the core workflow and aligned internal artifacts.
|
|
|
151
152
|
- **Why:** Makes it easier for humans and agents to understand and consistently use the CLI without memorizing many commands.
|
|
152
153
|
- **Completed:** 2025-11-16
|
|
153
154
|
|
|
155
|
+
#### cloud-sync-simplicity
|
|
156
|
+
Make cloud sync's safe path the default: per-conflict review, orphan cleanup, scoped push
|
|
157
|
+
- **Files:** commands/business-sync.js, commands/cloud.js, commands/push.js, commands/sync.js
|
|
158
|
+
- **Status:** complete
|
|
159
|
+
- **Keywords:** sync, cloud, conflicts, orphans, push
|
|
160
|
+
- **What:** `atris sync --review` picks local/cloud/merge per conflicting file (`commands/business-sync.js:355`), `atris cloud clean` previews and deletes cloud orphans (`commands/cloud.js:22`), and push leads with the safe path on drift (`commands/push.js:349`)
|
|
161
|
+
|
|
162
|
+
#### codex-goal-replacement
|
|
163
|
+
Bridge Atris mission selection into the Codex visible goal
|
|
164
|
+
- **Files:** commands/codex-goal.js, commands/mission.js, bin/atris.js
|
|
165
|
+
- **Status:** complete
|
|
166
|
+
- **Keywords:** codex, goal, mission, bridge
|
|
167
|
+
- **What:** `atris codex-goal` writes `.atris/state/codex_goal.json` (schema `atris.codex_goal.v1`) so the Codex runtime can mirror `goal.visible_goal` into the native goal UI
|
|
168
|
+
|
|
169
|
+
#### company-brain-sync
|
|
170
|
+
Sync the atris/ brain surface of a business workspace instead of raw file mirroring
|
|
171
|
+
- **Files:** lib/company-brain-sync.js, commands/business-sync.js, commands/sync.js
|
|
172
|
+
- **Status:** complete
|
|
173
|
+
- **Keywords:** sync, business, company-brain, workspace
|
|
174
|
+
- **What:** `atris sync --status` renders business, brain file count, conflict packets, and watcher heartbeat without credentials
|
|
175
|
+
|
|
176
|
+
#### pack-recovery
|
|
177
|
+
Recover recorded pack file work after an interrupted run
|
|
178
|
+
- **Files:** commands/pack.js
|
|
179
|
+
- **Status:** complete
|
|
180
|
+
- **Keywords:** pack, recover, recovery, protected-files
|
|
181
|
+
- **What:** `atris pack run --recover <receipt.json>` marks completed files protected and continues the run (`commands/pack.js:166`, `:2536`)
|
|
182
|
+
|
|
183
|
+
#### plan-review-by-validator
|
|
184
|
+
Validator gate between plan and do so half-specified plans never execute
|
|
185
|
+
- **Files:** commands/autopilot.js, test/autopilot-plan-review.test.js
|
|
186
|
+
- **Status:** complete
|
|
187
|
+
- **Keywords:** plan, review, validator, signoff
|
|
188
|
+
- **What:** the validator reads each plan fresh and returns a machine-parseable SIGNOFF/REJECT verdict before execution (`commands/autopilot.js:1249-1510`)
|
|
189
|
+
|
|
190
|
+
#### self-driving-mission
|
|
191
|
+
Give Atris a destination once; it owns route, staffing, recovery, and the arrival receipt
|
|
192
|
+
- **Files:** commands/mission.js, lib/runner-command.js, lib/fleet.js
|
|
193
|
+
- **Status:** complete
|
|
194
|
+
- **Keywords:** mission, self-driving, route, engine, autoland
|
|
195
|
+
- **What:** `atris mission run` drives a durable objective with `--due`, `--max-ticks`, and `--complete-on-pass` (`commands/mission.js:581-641`)
|
|
196
|
+
|
|
197
|
+
#### spaceship
|
|
198
|
+
Bounded, self-reporting overnight runner
|
|
199
|
+
- **Files:** commands/spaceship.js, scripts/spaceship.sh
|
|
200
|
+
- **Status:** complete
|
|
201
|
+
- **Keywords:** spaceship, overnight, runner, supervised-loop
|
|
202
|
+
- **What:** `atris spaceship` wraps the supervised loop script that survives bad ticks and reports each state change
|
|
203
|
+
|
|
204
|
+
#### team-member-standard
|
|
205
|
+
MEMBER.md directory format for team members
|
|
206
|
+
- **Files:** atris/team/*/MEMBER.md
|
|
207
|
+
- **Status:** complete
|
|
208
|
+
- **Keywords:** member, MEMBER.md, team, standard
|
|
209
|
+
- **What:** every team member lives in `atris/team/<name>/MEMBER.md`; init and sync ship them into user projects (`commands/sync.js:526-531`)
|
|
210
|
+
|
|
211
|
+
#### verify-falsifiability
|
|
212
|
+
The Verify field must be a real rubric that fails before work and passes after
|
|
213
|
+
- **Files:** commands/verify.js, commands/autopilot.js
|
|
214
|
+
- **Status:** complete
|
|
215
|
+
- **Keywords:** verify, falsifiable, rubric, reward
|
|
216
|
+
- **What:** `atris verify` runs the task's rubric against the tree; a rubric that already passes halts the tick instead of counting a fake success
|
|
217
|
+
|
|
218
|
+
---
|
|
219
|
+
|
|
220
|
+
### Parked Features
|
|
221
|
+
|
|
222
|
+
#### customer-skill-zones
|
|
223
|
+
- **Status:** parked, partially shipped; private publish parked per `atris/features/customer-skill-zones/idea.md`
|
|
224
|
+
|
|
154
225
|
---
|
|
155
226
|
|
|
156
227
|
## Guidelines
|
package/atris/skills/README.md
CHANGED
|
@@ -6,8 +6,8 @@ Agent-agnostic skills. Works with Claude, Cursor, Codex, any LLM agent.
|
|
|
6
6
|
|
|
7
7
|
Every process = **Skill + Policy**
|
|
8
8
|
|
|
9
|
-
- `skills/[name]/SKILL.md
|
|
10
|
-
- `policies/[name].md
|
|
9
|
+
- `skills/[name]/SKILL.md`: How to DO (process)
|
|
10
|
+
- `policies/[name].md`: How to REVIEW (validation)
|
|
11
11
|
|
|
12
12
|
## Integration
|
|
13
13
|
|
|
@@ -25,19 +25,46 @@ cp -r atris/skills/[name] ~/.codex/skills/
|
|
|
25
25
|
|
|
26
26
|
| Skill | Description | Policy |
|
|
27
27
|
|-------|-------------|--------|
|
|
28
|
-
|
|
|
29
|
-
|
|
|
30
|
-
|
|
|
31
|
-
|
|
|
28
|
+
| aeo | Content engineered to get cited by ChatGPT, Claude, and Gemini | - |
|
|
29
|
+
| apps | View, manage, and trigger Atris apps | - |
|
|
30
|
+
| atris | Workspace navigation, tasks, MAP.md, where-is-X questions | `policies/ANTISLOP.md` |
|
|
31
|
+
| atris-feedback | Submit, list, resolve, close, or delete customer feedback | - |
|
|
32
|
+
| autopilot | Run one autonomous plan/do/review tick | - |
|
|
33
|
+
| autoresearch | Keep/revert experiment loop for experiment packs | - |
|
|
34
|
+
| backend | Backend architecture policy | `policies/atris-backend.md` |
|
|
35
|
+
| blocks | Author Atris block documents: docs, decks, reports | - |
|
|
36
|
+
| calendar | Google Calendar via AtrisOS API | - |
|
|
37
|
+
| copy-editor | Detects and fixes AI writing patterns | - |
|
|
38
|
+
| create-app | Build and deploy an Atris app from a description | - |
|
|
39
|
+
| create-member | Create and manage MEMBER.md team members | - |
|
|
32
40
|
| design | Frontend aesthetics policy | `policies/atris-design.md` |
|
|
33
|
-
|
|
|
34
|
-
|
|
|
35
|
-
|
|
|
36
|
-
|
|
|
37
|
-
|
|
|
41
|
+
| drive | Google Drive, Docs, and Sheets via AtrisOS API | - |
|
|
42
|
+
| email-agent | Gmail via AtrisOS API | - |
|
|
43
|
+
| endgame | Pick the next horizon and write the reverse path as tasks | - |
|
|
44
|
+
| engines | Dispatch work to an installed terminal agent or engine profile | - |
|
|
45
|
+
| fable-method | Working method for daily-driver models | - |
|
|
46
|
+
| flow | All-day operating partner: identity, goals, live status | - |
|
|
47
|
+
| github | GitHub via AtrisOS API | - |
|
|
48
|
+
| imessage | Inspect and send local macOS iMessage | - |
|
|
49
|
+
| improve | One verified, scored improvement tick with a receipt | - |
|
|
50
|
+
| launch | Write a release post for Twitter and LinkedIn | - |
|
|
51
|
+
| loop | Schedule the recurring autopilot heartbeat | - |
|
|
52
|
+
| magic-inbox | Autonomous inbox triage, drafts, and archive | - |
|
|
53
|
+
| memory | Search and reason over journal history | - |
|
|
54
|
+
| meta | Metacognition for agents | `atris/lessons.md` |
|
|
55
|
+
| notion | Notion via AtrisOS API | - |
|
|
56
|
+
| ramp | Ramp card and spend management | - |
|
|
57
|
+
| render-cli | Render.com CLI inspect, auth, and deploys | - |
|
|
58
|
+
| research-search | Research sweep across arxiv, semantic scholar, github, web | - |
|
|
59
|
+
| skill-improver | Audit and improve skills against the Anthropic guide | - |
|
|
60
|
+
| slack | Slack via AtrisOS API | - |
|
|
61
|
+
| slides | Google Slides via AtrisOS API | - |
|
|
62
|
+
| tidy | Workspace maintenance: stale docs, broken refs, abandoned tasks | - |
|
|
63
|
+
| wake | Wake a member and run one closed-loop tick | - |
|
|
64
|
+
| wiki | Local-first project wiki: ingest, query, lint | - |
|
|
38
65
|
| writing | Essay process with gates | `policies/writing.md` |
|
|
39
|
-
|
|
|
40
|
-
|
|
|
66
|
+
| x-search | X/Twitter search via xAI Grok API | - |
|
|
67
|
+
| youtube | YouTube discovery, notes, and learning | - |
|
|
41
68
|
|
|
42
69
|
## ClawHub (External Distribution)
|
|
43
70
|
|
|
@@ -45,8 +72,10 @@ Skills we publish to OpenClaw's ClawHub marketplace. These have YAML frontmatter
|
|
|
45
72
|
|
|
46
73
|
| Skill | Description | Status |
|
|
47
74
|
|-------|-------------|--------|
|
|
48
|
-
| clawhub/atris | Codebase intelligence
|
|
49
|
-
| clawhub/
|
|
75
|
+
| clawhub/atris | Codebase intelligence: MAP.md navigation for any agent | Ready to publish |
|
|
76
|
+
| clawhub/chief-of-staff | Daily briefing agent that learns your patterns | Ready to publish |
|
|
77
|
+
| clawhub/member-runtime | Load and run MEMBER.md team members | Ready to publish |
|
|
78
|
+
| clawhub/philosophy-of-work | Agent onboarding: philosophy, 60s start, proof contract | Ready to publish |
|
|
50
79
|
|
|
51
80
|
```bash
|
|
52
81
|
# Publish to ClawHub
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: aeo
|
|
3
|
-
description: "AI Engine Optimization
|
|
3
|
+
description: "AI Engine Optimization: write content engineered to get cited by ChatGPT, Claude, and Gemini. Not SEO. Triggers on: aeo, AI engine, llm citation, get cited, write for ai."
|
|
4
4
|
when_to_use: "Use when the user wants content that ranks in AI answers (not Google SERP). Examples: 'write an AEO page', 'get ExampleCo cited by ChatGPT', 'aeo for our pricing page', 'make this quotable by LLMs'."
|
|
5
5
|
version: 0.1.0
|
|
6
6
|
allowed-tools: Read, Write, Edit, Glob, Grep, Bash
|
|
@@ -10,7 +10,7 @@ tags:
|
|
|
10
10
|
- marketing
|
|
11
11
|
---
|
|
12
12
|
|
|
13
|
-
# AEO
|
|
13
|
+
# AEO: AI Engine Optimization
|
|
14
14
|
|
|
15
15
|
Write content that LLMs cite when a human asks them a question. Different objective than SEO, different rules than craft writing.
|
|
16
16
|
|
|
@@ -48,7 +48,7 @@ Entity graph lives in the **customer's EC2 workspace** (not agent_files, not DB)
|
|
|
48
48
|
1. **Front-load the claim.** LLMs quote sentence 1 of a paragraph. No throat-clearing.
|
|
49
49
|
2. **Name entities explicitly.** "ExampleCo" not "a leading freight platform." Entity density is how LLMs disambiguate and cite.
|
|
50
50
|
3. **Canonical definition.** One sentence owns `X is Y that does Z` for the category. Make it liftable.
|
|
51
|
-
4. **Q&A scaffolding.** H2s in question form: "What is X?" "How does X work?"
|
|
51
|
+
4. **Q&A scaffolding.** H2s in question form: "What is X?" "How does X work?", matching the prompts LLMs actually get.
|
|
52
52
|
5. **Declarative stats with sources.** "$2.3B market (McKinsey 2025)" beats "a growing market." Citable atoms.
|
|
53
53
|
6. **Comparison tables.** LLMs love structured data. Build one per category claim.
|
|
54
54
|
7. **Fresh dates visible.** "Updated 2026-04-17" at top. LLMs weight recency.
|
|
@@ -62,11 +62,11 @@ Entity graph lives in the **customer's EC2 workspace** (not agent_files, not DB)
|
|
|
62
62
|
READ entity graph → DRAFT → SELF-SCORE → WRITE to workspace → (phase 2: AUDIT)
|
|
63
63
|
```
|
|
64
64
|
|
|
65
|
-
1. **READ
|
|
66
|
-
2. **DRAFT
|
|
67
|
-
3. **SELF-SCORE
|
|
68
|
-
4. **WRITE
|
|
69
|
-
5. **AUDIT** (phase 2)
|
|
65
|
+
1. **READ**: Pull `entities.md`, `definitions.md`, `stats.md` from customer workspace. If missing, create skeleton files first.
|
|
66
|
+
2. **DRAFT**: Generate article applying all 10 rules. Topic + target queries + entity context → article.
|
|
67
|
+
3. **SELF-SCORE**: Append a `## AEO Self-Check` section: each rule scored pass/fail with evidence.
|
|
68
|
+
4. **WRITE**: Save to `/workspace/atris/aeo/drafts/<slug>.md`.
|
|
69
|
+
5. **AUDIT** (phase 2): Run target queries against 4 LLMs, measure whether article is cited, write results to `/workspace/atris/aeo/audits/<slug>-<date>.md`.
|
|
70
70
|
|
|
71
71
|
## Entity graph layout (in customer workspace)
|
|
72
72
|
|
|
@@ -90,7 +90,7 @@ atris write aeo "<topic>" --workspace <name>
|
|
|
90
90
|
atris aeo init --workspace <name>
|
|
91
91
|
|
|
92
92
|
# View current drafts
|
|
93
|
-
|
|
93
|
+
ls workspace/atris/aeo/drafts
|
|
94
94
|
```
|
|
95
95
|
|
|
96
96
|
## Credits
|
|
@@ -107,7 +107,7 @@ atris ls workspace/atris/aeo/drafts --workspace <name>
|
|
|
107
107
|
- Self-score section is mandatory in every draft.
|
|
108
108
|
- Never hedge in the body. Hedging kills citation rate.
|
|
109
109
|
- Never fabricate stats. If a stat is uncited, flag it in self-check.
|
|
110
|
-
- Entity graph skeleton auto-creates if missing
|
|
110
|
+
- Entity graph skeleton auto-creates if missing. Never fail on first run.
|
|
111
111
|
|
|
112
112
|
## Related
|
|
113
113
|
|
|
@@ -29,7 +29,7 @@ Commands: plan → do → review
|
|
|
29
29
|
|
|
30
30
|
Key behaviors:
|
|
31
31
|
- Mission-shaped intent wins: run `atris mission run ...` before normal task selection when the user invokes it or asks for a loop.
|
|
32
|
-
- Read PERSONA.md (
|
|
32
|
+
- Read PERSONA.md (MAP.md first, plain words, lead with the outcome)
|
|
33
33
|
- Check MAP.md for file:line refs
|
|
34
34
|
- Use `atris task` for claims, proof, ready, and accept
|
|
35
35
|
- Give every task a plain first layer: what changes, why it matters, and what
|