archondev 2.18.2 → 2.18.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 +5 -0
- package/dist/{chunk-EKU62MGC.js → chunk-3WJIZGHN.js} +2 -2
- package/dist/{chunk-NCPHO54C.js → chunk-DYYWJ5MO.js} +1 -1
- package/dist/{chunk-4YEJ26F7.js → chunk-Z65525NP.js} +9 -0
- package/dist/{execute-MB4ZF3HQ.js → execute-2RL7NTHZ.js} +2 -2
- package/dist/index.js +19 -14
- package/dist/{parallel-W2ETYYAL.js → parallel-27ZWSW6B.js} +2 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -101,6 +101,7 @@ Copy governance files into any project. Works with your existing AI tools: **Cur
|
|
|
101
101
|
| `archon cleanup auto [enable\|disable]` | Enable/disable auto cleanup on start |
|
|
102
102
|
|
|
103
103
|
**Tip:** Use `archon plan --edit` to adjust title and acceptance criteria before planning.
|
|
104
|
+
**Web Checks:** If Archon detects a web project, it prompts to run A11y/SEO/GEO checks and stores your preference in `.archon/config.yaml`.
|
|
104
105
|
|
|
105
106
|
## Pricing
|
|
106
107
|
|
|
@@ -183,12 +184,16 @@ archon github status # Verify connection
|
|
|
183
184
|
archon plan "add user settings page"
|
|
184
185
|
archon execute ATOM-001 --cloud
|
|
185
186
|
|
|
187
|
+
# 3b. Queue multiple atoms in parallel (Credits tier)
|
|
188
|
+
archon parallel cloud ATOM-001 ATOM-002
|
|
189
|
+
|
|
186
190
|
# 4. Check progress
|
|
187
191
|
archon cloud status # List all cloud executions
|
|
188
192
|
archon cloud logs <id> # View execution logs
|
|
189
193
|
```
|
|
190
194
|
|
|
191
195
|
The cloud worker clones your repo, runs the Executor agent, creates a feature branch, and opens a PR. You can close your terminal after queuing.
|
|
196
|
+
Cloud execution is Credits-only. BYOK and Free tiers run locally.
|
|
192
197
|
|
|
193
198
|
## Working with Existing Projects
|
|
194
199
|
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
getGitBranch,
|
|
4
4
|
getGitRemoteUrl,
|
|
5
5
|
queueCloudExecution
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-Z65525NP.js";
|
|
7
7
|
import {
|
|
8
8
|
UsageRecorder,
|
|
9
9
|
loadAtom
|
|
@@ -4791,7 +4791,7 @@ function createPrompt() {
|
|
|
4791
4791
|
}
|
|
4792
4792
|
async function execute(atomId, options) {
|
|
4793
4793
|
if (options.parallel && options.parallel.length > 0) {
|
|
4794
|
-
const { parallelExecute } = await import("./parallel-
|
|
4794
|
+
const { parallelExecute } = await import("./parallel-27ZWSW6B.js");
|
|
4795
4795
|
const allAtomIds = [atomId, ...options.parallel];
|
|
4796
4796
|
await parallelExecute(allAtomIds, { skipGates: options.skipGates === true });
|
|
4797
4797
|
return;
|
|
@@ -117,6 +117,15 @@ async function queueCloudExecution(atomId, projectName, options) {
|
|
|
117
117
|
throw new Error('Not authenticated. Run "archon login" first.');
|
|
118
118
|
}
|
|
119
119
|
const client = getClient(authToken);
|
|
120
|
+
if (config.userId) {
|
|
121
|
+
const { data: profile, error: profileError } = await client.from("user_profiles").select("tier").eq("auth_id", config.userId).single();
|
|
122
|
+
if (profileError || !profile) {
|
|
123
|
+
throw new Error("Unable to verify billing tier. Try again or re-login.");
|
|
124
|
+
}
|
|
125
|
+
if (profile.tier !== "CREDITS") {
|
|
126
|
+
throw new Error("Cloud execution requires Credits tier. BYOK and Free run locally.");
|
|
127
|
+
}
|
|
128
|
+
}
|
|
120
129
|
const insertData = {
|
|
121
130
|
atom_id: atomId,
|
|
122
131
|
project_name: projectName,
|
package/dist/index.js
CHANGED
|
@@ -16,7 +16,6 @@ import {
|
|
|
16
16
|
} from "./chunk-BFPWDOMA.js";
|
|
17
17
|
import "./chunk-HGLPIM7J.js";
|
|
18
18
|
import {
|
|
19
|
-
listModels,
|
|
20
19
|
resetPreferences,
|
|
21
20
|
setExecutionPreference,
|
|
22
21
|
setPreference,
|
|
@@ -44,19 +43,19 @@ import {
|
|
|
44
43
|
parallelRunWaves,
|
|
45
44
|
parallelSchedule,
|
|
46
45
|
parallelStatus
|
|
47
|
-
} from "./chunk-
|
|
46
|
+
} from "./chunk-DYYWJ5MO.js";
|
|
48
47
|
import {
|
|
49
48
|
DependencyParser,
|
|
50
49
|
EnvironmentConfigLoader,
|
|
51
50
|
EnvironmentValidator,
|
|
52
51
|
execute
|
|
53
|
-
} from "./chunk-
|
|
52
|
+
} from "./chunk-3WJIZGHN.js";
|
|
54
53
|
import {
|
|
55
54
|
cloudCancel,
|
|
56
55
|
cloudLogs,
|
|
57
56
|
cloudStatus,
|
|
58
57
|
createAuthedSupabaseClient
|
|
59
|
-
} from "./chunk-
|
|
58
|
+
} from "./chunk-Z65525NP.js";
|
|
60
59
|
import {
|
|
61
60
|
list
|
|
62
61
|
} from "./chunk-NJF6MRTR.js";
|
|
@@ -3767,7 +3766,7 @@ async function executeNext() {
|
|
|
3767
3766
|
if (canUseCloud) {
|
|
3768
3767
|
options.push({ key: "3", label: "Parallel (cloud)" });
|
|
3769
3768
|
}
|
|
3770
|
-
const choice = await promptChoice("Select execution mode", options);
|
|
3769
|
+
const choice = await promptChoice("Select execution mode", options, "1");
|
|
3771
3770
|
if (choice === "2") selectedMode = "parallel-local";
|
|
3772
3771
|
if (choice === "3" && canUseCloud) selectedMode = "parallel-cloud";
|
|
3773
3772
|
}
|
|
@@ -3799,11 +3798,11 @@ async function executeNext() {
|
|
|
3799
3798
|
}
|
|
3800
3799
|
}
|
|
3801
3800
|
if (selectedMode === "parallel-cloud") {
|
|
3802
|
-
const { parallelExecuteCloud: parallelExecuteCloud2 } = await import("./parallel-
|
|
3801
|
+
const { parallelExecuteCloud: parallelExecuteCloud2 } = await import("./parallel-27ZWSW6B.js");
|
|
3803
3802
|
await parallelExecuteCloud2(runIds);
|
|
3804
3803
|
return;
|
|
3805
3804
|
}
|
|
3806
|
-
const { parallelExecute } = await import("./parallel-
|
|
3805
|
+
const { parallelExecute } = await import("./parallel-27ZWSW6B.js");
|
|
3807
3806
|
await parallelExecute(runIds);
|
|
3808
3807
|
return;
|
|
3809
3808
|
}
|
|
@@ -3811,7 +3810,7 @@ async function executeNext() {
|
|
|
3811
3810
|
const atomId = await prompt("Enter atom ID to execute (or press Enter for first pending)");
|
|
3812
3811
|
const targetId = atomId.trim() || pendingAtoms[0]?.id;
|
|
3813
3812
|
if (targetId) {
|
|
3814
|
-
const { execute: execute2 } = await import("./execute-
|
|
3813
|
+
const { execute: execute2 } = await import("./execute-2RL7NTHZ.js");
|
|
3815
3814
|
await execute2(targetId, {});
|
|
3816
3815
|
} else {
|
|
3817
3816
|
console.log(chalk6.yellow("No atom to execute."));
|
|
@@ -4037,7 +4036,7 @@ async function maybePromptWebChecks(cwd, projectState) {
|
|
|
4037
4036
|
{ key: "2", label: "Choose checks" },
|
|
4038
4037
|
{ key: "3", label: "Not now" },
|
|
4039
4038
|
{ key: "4", label: "Never ask again" }
|
|
4040
|
-
]);
|
|
4039
|
+
], "3");
|
|
4041
4040
|
if (choice === "1") {
|
|
4042
4041
|
await runWebChecksSuite();
|
|
4043
4042
|
} else if (choice === "2") {
|
|
@@ -4063,7 +4062,7 @@ function promptYesNo(question, defaultValue) {
|
|
|
4063
4062
|
});
|
|
4064
4063
|
});
|
|
4065
4064
|
}
|
|
4066
|
-
function promptChoice(question, options) {
|
|
4065
|
+
function promptChoice(question, options, defaultKey) {
|
|
4067
4066
|
return new Promise((resolve) => {
|
|
4068
4067
|
console.log(`${chalk6.cyan("?")} ${question}`);
|
|
4069
4068
|
for (const opt of options) {
|
|
@@ -4075,7 +4074,16 @@ function promptChoice(question, options) {
|
|
|
4075
4074
|
});
|
|
4076
4075
|
rl.question(` ${chalk6.dim("Enter choice")}: `, (answer) => {
|
|
4077
4076
|
rl.close();
|
|
4078
|
-
|
|
4077
|
+
const trimmed = answer.trim();
|
|
4078
|
+
if (trimmed) {
|
|
4079
|
+
resolve(trimmed);
|
|
4080
|
+
return;
|
|
4081
|
+
}
|
|
4082
|
+
if (defaultKey) {
|
|
4083
|
+
resolve(defaultKey);
|
|
4084
|
+
return;
|
|
4085
|
+
}
|
|
4086
|
+
resolve("");
|
|
4079
4087
|
});
|
|
4080
4088
|
});
|
|
4081
4089
|
}
|
|
@@ -7094,9 +7102,6 @@ preferencesCommand.command("execution-set <key> <value>").description("Set execu
|
|
|
7094
7102
|
preferencesCommand.action(async () => {
|
|
7095
7103
|
await showPreferences();
|
|
7096
7104
|
});
|
|
7097
|
-
program.command("models").description("List available AI models").action(async () => {
|
|
7098
|
-
await listModels();
|
|
7099
|
-
});
|
|
7100
7105
|
program.command("watch").description("Live TUI dashboard showing atoms, credits, and activity").action(async () => {
|
|
7101
7106
|
await watch();
|
|
7102
7107
|
});
|
|
@@ -6,8 +6,8 @@ import {
|
|
|
6
6
|
parallelRunWaves,
|
|
7
7
|
parallelSchedule,
|
|
8
8
|
parallelStatus
|
|
9
|
-
} from "./chunk-
|
|
10
|
-
import "./chunk-
|
|
9
|
+
} from "./chunk-DYYWJ5MO.js";
|
|
10
|
+
import "./chunk-Z65525NP.js";
|
|
11
11
|
import "./chunk-3PZ7WU5I.js";
|
|
12
12
|
import "./chunk-5EVHUDQX.js";
|
|
13
13
|
import "./chunk-5CFGPXQ3.js";
|