atris 3.38.0 → 3.40.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 +25 -6
- package/atris/PERSONA.md +8 -4
- package/atris.md +7 -0
- package/ax +2 -1
- package/bin/atris.js +30 -5
- package/commands/agent-spawn.js +13 -11
- package/commands/autoland.js +28 -77
- package/commands/bench.js +10 -12
- package/commands/business.js +345 -0
- package/commands/chat-scan.js +5 -7
- package/commands/codex-goal.js +8 -10
- package/commands/console.js +19 -3
- package/commands/decide.js +166 -0
- package/commands/deck.js +1 -4
- package/commands/drill.js +14 -24
- package/commands/engine.js +196 -8
- package/commands/gm.js +8 -6
- package/commands/harvest.js +1 -4
- package/commands/init.js +23 -3
- package/commands/land.js +8 -14
- package/commands/launchpad.js +1 -14
- package/commands/lifecycle.js +5 -5
- package/commands/log.js +55 -5
- package/commands/member.js +558 -574
- package/commands/mission.js +456 -237
- package/commands/pack.js +2746 -164
- package/commands/play.js +6 -4
- package/commands/probe.js +2 -2
- package/commands/pulse.js +15 -16
- package/commands/release.js +10 -9
- package/commands/router.js +5 -4
- package/commands/site-deploy.js +870 -0
- package/commands/site.js +11 -2
- package/commands/slop.js +14 -2
- package/commands/stream.js +4 -18
- package/commands/task.js +880 -558
- package/commands/taste.js +101 -0
- package/commands/team.js +83 -3
- package/commands/vercel.js +4 -2
- package/commands/voice.js +195 -0
- package/commands/watch.js +1 -22
- package/commands/wiki.js +1 -4
- package/commands/workflow.js +2 -2
- package/commands/worktree.js +1 -14
- package/commands/xp.js +27 -24
- package/lib/accept-verify-gate.js +5 -1
- package/lib/arg-parser.js +41 -0
- package/lib/auto-accept-certified.js +116 -1
- package/lib/autoland.js +66 -0
- package/lib/bench/runner.js +19 -1
- package/lib/context-gatherer.js +7 -1
- package/lib/engine-registry.js +141 -20
- package/lib/falsifier-probe.js +84 -0
- package/lib/fleet.js +65 -15
- package/lib/git-spawn.js +15 -0
- package/lib/json-file.js +37 -0
- package/lib/known-commands.js +2 -2
- package/lib/lesson-preflight.js +146 -0
- package/lib/loop-doctor.js +0 -2
- package/lib/mission-human-asks.js +28 -0
- package/lib/mission-protected-lane.js +4 -1
- package/lib/official-cli-integration.js +47 -2
- package/lib/orb-context.js +8 -1
- package/lib/pack-capabilities.js +685 -0
- package/lib/router-brain.js +51 -1
- package/lib/runner-command.js +0 -6
- package/lib/self-drive.js +44 -13
- package/lib/task-db.js +137 -3
- package/lib/task-decision.js +50 -0
- package/lib/taste-lessons.js +153 -0
- package/lib/tool-result-encode.js +17 -1
- package/lib/voice-gate.js +66 -0
- package/lib/wish-audit.js +1 -1
- package/lib/wish-delegate.js +1 -1
- package/lib/zip.js +95 -7
- package/package.json +2 -1
- package/templates/business-starter/persona.md +9 -0
package/commands/log.js
CHANGED
|
@@ -97,6 +97,56 @@ function readDigestSection(root, title, relativePath, maxLines = null) {
|
|
|
97
97
|
};
|
|
98
98
|
}
|
|
99
99
|
|
|
100
|
+
// Splits a journal body into its ## groups so the digest can show
|
|
101
|
+
// completed / inbox / notes as short labeled blocks instead of a raw dump.
|
|
102
|
+
function journalGroups(lines) {
|
|
103
|
+
const groups = [];
|
|
104
|
+
let current = null;
|
|
105
|
+
for (const line of lines) {
|
|
106
|
+
const heading = line.match(/^##\s+(.+?)\s*$/);
|
|
107
|
+
if (heading) {
|
|
108
|
+
current = { heading: heading[1], lines: [] };
|
|
109
|
+
groups.push(current);
|
|
110
|
+
} else if (current) {
|
|
111
|
+
current.lines.push(line);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
return groups;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
function bulletCount(group) {
|
|
118
|
+
return group.lines.filter((line) => /^\s*-\s+/.test(line)).length;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
function digestSummaryLine(date, sections) {
|
|
122
|
+
let completed = 0;
|
|
123
|
+
let inbox = 0;
|
|
124
|
+
for (const section of sections) {
|
|
125
|
+
for (const group of journalGroups(section.lines)) {
|
|
126
|
+
if (/^completed/i.test(group.heading)) completed += bulletCount(group);
|
|
127
|
+
else if (/^inbox/i.test(group.heading)) inbox += bulletCount(group);
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
const parts = [`${sections.length} log${sections.length === 1 ? '' : 's'}`];
|
|
131
|
+
if (completed) parts.push(`${completed} completed`);
|
|
132
|
+
if (inbox) parts.push(`${inbox} inbox`);
|
|
133
|
+
return `${date}: ${parts.join(', ')}`;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
function renderDigestSection(section) {
|
|
137
|
+
const groups = journalGroups(section.lines);
|
|
138
|
+
if (!groups.length) {
|
|
139
|
+
return [`=== ${section.title} ===`, section.path, ...section.lines].join('\n');
|
|
140
|
+
}
|
|
141
|
+
const out = [`=== ${section.title} ===`, section.path];
|
|
142
|
+
for (const group of groups) {
|
|
143
|
+
const body = group.lines.filter((line) => line.trim() && line.trim() !== '---');
|
|
144
|
+
if (!body.length) continue;
|
|
145
|
+
out.push('', `${group.heading.toLowerCase()} (${bulletCount(group)})`, ...body);
|
|
146
|
+
}
|
|
147
|
+
return out.join('\n');
|
|
148
|
+
}
|
|
149
|
+
|
|
100
150
|
function logsDigest(args = [], options = {}) {
|
|
101
151
|
const root = options.cwd || process.cwd();
|
|
102
152
|
const date = digestDate(args);
|
|
@@ -125,11 +175,11 @@ function logsDigest(args = [], options = {}) {
|
|
|
125
175
|
} else if (sections.length === 0) {
|
|
126
176
|
console.log(`No logs for ${date} yet.`);
|
|
127
177
|
} else {
|
|
128
|
-
console.log(
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
...
|
|
132
|
-
].join('\n'))
|
|
178
|
+
console.log([
|
|
179
|
+
digestSummaryLine(date, sections),
|
|
180
|
+
'',
|
|
181
|
+
...sections.map(renderDigestSection),
|
|
182
|
+
].join('\n'));
|
|
133
183
|
}
|
|
134
184
|
|
|
135
185
|
return payload;
|