archondev 2.18.1 → 2.18.2
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/dist/{auth-7AUNKGQW.js → auth-HQBAG4CR.js} +3 -3
- package/dist/{bug-PH2E6GQT.js → bug-5WRBCFRT.js} +2 -3
- package/dist/{chunk-BKJISQXP.js → chunk-3PZ7WU5I.js} +21 -70
- package/dist/{chunk-KY2HKRC2.js → chunk-4YEJ26F7.js} +13 -5
- package/dist/{chunk-RPVPOUH3.js → chunk-75J2JMU3.js} +1 -1
- package/dist/{chunk-U2ZTHVDD.js → chunk-CZCY63EY.js} +12 -8
- package/dist/{chunk-4KJJ6MSQ.js → chunk-EKU62MGC.js} +56 -32
- package/dist/{chunk-4VWKGOBQ.js → chunk-LBBHM4I5.js} +7 -7
- package/dist/{chunk-JAWG5QX4.js → chunk-NCPHO54C.js} +3 -3
- package/dist/{chunk-HKSVJWMI.js → chunk-NJF6MRTR.js} +1 -1
- package/dist/{chunk-54ATBLYE.js → chunk-P666JE3G.js} +1 -1
- package/dist/{chunk-SUGIWSCB.js → chunk-SVU7MLG6.js} +5 -24
- package/dist/{chunk-67ZTMWP4.js → chunk-UD45ZLV3.js} +1 -1
- package/dist/{chunk-OQUWPU5F.js → chunk-VF2OTDMS.js} +1 -1
- package/dist/{chunk-23IS6N63.js → chunk-ZJXIOETW.js} +4 -4
- package/dist/{config-UARQV6FG.js → config-JBPM2YAB.js} +1 -2
- package/dist/{execute-6SJL5POT.js → execute-MB4ZF3HQ.js} +4 -4
- package/dist/{geo-RP6HKLKZ.js → geo-KV4IRGKN.js} +2 -3
- package/dist/index.js +58 -55
- package/dist/{init-5RS332ZH.js → init-FINETS3Q.js} +1 -1
- package/dist/{interviewer-Z7K4IZYG.js → interviewer-NQHNMVH4.js} +1 -2
- package/dist/{keys-XE2D6I24.js → keys-U4QZE5YB.js} +2 -3
- package/dist/{list-PCDSX4UI.js → list-CNKAH354.js} +3 -3
- package/dist/{parallel-IRFNVIB6.js → parallel-W2ETYYAL.js} +4 -4
- package/dist/{plan-RE5A3E2J.js → plan-XALA4SLH.js} +2 -2
- package/dist/{preferences-QAM5QKAQ.js → preferences-I6WETXOI.js} +4 -4
- package/dist/{tier-selection-2W6JWJUN.js → tier-selection-426HA765.js} +2 -3
- package/package.json +1 -1
|
@@ -2,10 +2,10 @@ import {
|
|
|
2
2
|
login,
|
|
3
3
|
logout,
|
|
4
4
|
status
|
|
5
|
-
} from "./chunk-
|
|
6
|
-
import "./chunk-4VWKGOBQ.js";
|
|
7
|
-
import "./chunk-SUGIWSCB.js";
|
|
5
|
+
} from "./chunk-CZCY63EY.js";
|
|
8
6
|
import "./chunk-M4LGRTLC.js";
|
|
7
|
+
import "./chunk-LBBHM4I5.js";
|
|
8
|
+
import "./chunk-SVU7MLG6.js";
|
|
9
9
|
import "./chunk-4VNS5WPM.js";
|
|
10
10
|
export {
|
|
11
11
|
login,
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import {
|
|
2
2
|
bugReport
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-VF2OTDMS.js";
|
|
4
4
|
import "./chunk-5CFGPXQ3.js";
|
|
5
5
|
import "./chunk-2NSWZDP7.js";
|
|
6
6
|
import "./chunk-HJARQDQR.js";
|
|
7
7
|
import "./chunk-UFR2LX6G.js";
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-M4LGRTLC.js";
|
|
8
|
+
import "./chunk-SVU7MLG6.js";
|
|
10
9
|
import "./chunk-4VNS5WPM.js";
|
|
11
10
|
export {
|
|
12
11
|
bugReport
|
|
@@ -15,22 +15,22 @@ import {
|
|
|
15
15
|
import {
|
|
16
16
|
KeyManager
|
|
17
17
|
} from "./chunk-RDG5BUED.js";
|
|
18
|
-
import {
|
|
19
|
-
createAuthedSupabaseClient,
|
|
20
|
-
isAuthenticated,
|
|
21
|
-
loadConfig
|
|
22
|
-
} from "./chunk-SUGIWSCB.js";
|
|
23
18
|
import {
|
|
24
19
|
SUPABASE_ANON_KEY,
|
|
25
20
|
SUPABASE_URL
|
|
26
21
|
} from "./chunk-M4LGRTLC.js";
|
|
22
|
+
import {
|
|
23
|
+
isAuthenticated,
|
|
24
|
+
loadConfig
|
|
25
|
+
} from "./chunk-SVU7MLG6.js";
|
|
27
26
|
|
|
28
27
|
// src/cli/plan.ts
|
|
29
28
|
import chalk from "chalk";
|
|
30
|
-
import { existsSync
|
|
31
|
-
import { readFile
|
|
32
|
-
import { join
|
|
29
|
+
import { existsSync } from "fs";
|
|
30
|
+
import { readFile, writeFile, mkdir } from "fs/promises";
|
|
31
|
+
import { join } from "path";
|
|
33
32
|
import { createInterface } from "readline";
|
|
33
|
+
import { createClient } from "@supabase/supabase-js";
|
|
34
34
|
|
|
35
35
|
// src/agents/sentinel.ts
|
|
36
36
|
var SYSTEM_PROMPT = `You are the Sentinel, a paranoid and skeptical code reviewer responsible for finding issues in implementation plans.
|
|
@@ -734,31 +734,6 @@ var TrackedAdversarialPlanner = class {
|
|
|
734
734
|
}
|
|
735
735
|
};
|
|
736
736
|
|
|
737
|
-
// src/core/config/roles.ts
|
|
738
|
-
import { existsSync } from "fs";
|
|
739
|
-
import { readFile } from "fs/promises";
|
|
740
|
-
import { join } from "path";
|
|
741
|
-
import yaml from "yaml";
|
|
742
|
-
async function loadRoleOverrides(cwd = process.cwd()) {
|
|
743
|
-
const candidates = [
|
|
744
|
-
join(cwd, ".archon", "config.yaml"),
|
|
745
|
-
join(cwd, "archon.config.yaml")
|
|
746
|
-
];
|
|
747
|
-
for (const path of candidates) {
|
|
748
|
-
if (!existsSync(path)) continue;
|
|
749
|
-
try {
|
|
750
|
-
const content = await readFile(path, "utf-8");
|
|
751
|
-
const parsed = yaml.parse(content);
|
|
752
|
-
if (parsed?.roles) {
|
|
753
|
-
return parsed.roles;
|
|
754
|
-
}
|
|
755
|
-
} catch {
|
|
756
|
-
continue;
|
|
757
|
-
}
|
|
758
|
-
}
|
|
759
|
-
return null;
|
|
760
|
-
}
|
|
761
|
-
|
|
762
737
|
// src/cli/plan.ts
|
|
763
738
|
var ATOMS_DIR = ".archon/atoms";
|
|
764
739
|
function createPrompt() {
|
|
@@ -780,8 +755,8 @@ async function plan(description, options) {
|
|
|
780
755
|
console.log(chalk.yellow('Not authenticated. Run "archon login" first.'));
|
|
781
756
|
console.log(chalk.dim("For local development, you can continue without authentication."));
|
|
782
757
|
}
|
|
783
|
-
const archPath =
|
|
784
|
-
if (!
|
|
758
|
+
const archPath = join(process.cwd(), "ARCHITECTURE.md");
|
|
759
|
+
if (!existsSync(archPath)) {
|
|
785
760
|
console.error(chalk.red('ARCHITECTURE.md not found. Run "archon init" first.'));
|
|
786
761
|
process.exit(1);
|
|
787
762
|
}
|
|
@@ -806,26 +781,6 @@ async function plan(description, options) {
|
|
|
806
781
|
}
|
|
807
782
|
process.exit(1);
|
|
808
783
|
}
|
|
809
|
-
if (options.edit) {
|
|
810
|
-
console.log(chalk.dim("\nEdit mode: update title and acceptance criteria (press Enter to keep current)."));
|
|
811
|
-
const newTitle = await prompt.ask(`Title [${atom.title}]: `);
|
|
812
|
-
if (newTitle.trim()) {
|
|
813
|
-
atom.title = newTitle.trim();
|
|
814
|
-
}
|
|
815
|
-
const acCurrent = atom.acceptanceCriteria.join(", ");
|
|
816
|
-
const newAc = await prompt.ask(`Acceptance criteria (comma-separated) [${acCurrent}]: `);
|
|
817
|
-
if (newAc.trim()) {
|
|
818
|
-
atom.acceptanceCriteria = newAc.split(",").map((ac) => ac.trim()).filter(Boolean);
|
|
819
|
-
}
|
|
820
|
-
const revalidation = validateAtom(atom);
|
|
821
|
-
if (!revalidation.valid) {
|
|
822
|
-
console.error(chalk.red("Invalid atom after edits:"));
|
|
823
|
-
for (const error of revalidation.errors) {
|
|
824
|
-
console.error(chalk.red(` - ${error.field}: ${error.message}`));
|
|
825
|
-
}
|
|
826
|
-
process.exit(1);
|
|
827
|
-
}
|
|
828
|
-
}
|
|
829
784
|
console.log(chalk.blue(`
|
|
830
785
|
Atom created: ${atom.externalId}`));
|
|
831
786
|
console.log(chalk.dim(`Title: ${atom.title}`));
|
|
@@ -851,17 +806,14 @@ Atom saved: ${atom.externalId}`));
|
|
|
851
806
|
console.log(chalk.dim("Architect will generate a plan, Sentinel will validate it.\n"));
|
|
852
807
|
const config = await loadConfig();
|
|
853
808
|
let billingContext;
|
|
854
|
-
if (config.userId
|
|
855
|
-
const supabase =
|
|
809
|
+
if (config.userId) {
|
|
810
|
+
const supabase = createClient(SUPABASE_URL, SUPABASE_ANON_KEY);
|
|
856
811
|
billingContext = {
|
|
857
812
|
userId: config.userId,
|
|
858
813
|
supabase
|
|
859
814
|
};
|
|
860
815
|
}
|
|
861
|
-
const
|
|
862
|
-
const architectConfig = roleOverrides?.architect?.model ? { model: roleOverrides.architect.model } : void 0;
|
|
863
|
-
const sentinelConfig = roleOverrides?.sentinel?.model ? { model: roleOverrides.sentinel.model } : void 0;
|
|
864
|
-
const planner = billingContext ? new TrackedAdversarialPlanner({ apiKey, billing: billingContext, architectConfig, sentinelConfig }) : new AdversarialPlanner({ apiKey, architectConfig, sentinelConfig });
|
|
816
|
+
const planner = billingContext ? new TrackedAdversarialPlanner({ apiKey, billing: billingContext }) : new AdversarialPlanner({ apiKey });
|
|
865
817
|
if (billingContext && planner instanceof TrackedAdversarialPlanner) {
|
|
866
818
|
const balanceCheck = await planner.checkBalance();
|
|
867
819
|
if (!balanceCheck.sufficient && balanceCheck.tier === "CREDITS") {
|
|
@@ -975,24 +927,24 @@ function displayPlan(plan2) {
|
|
|
975
927
|
console.log(chalk.bold("\nComplexity:"), plan2.estimated_complexity);
|
|
976
928
|
}
|
|
977
929
|
async function saveAtom(atom) {
|
|
978
|
-
const atomsDir =
|
|
979
|
-
if (!
|
|
930
|
+
const atomsDir = join(process.cwd(), ATOMS_DIR);
|
|
931
|
+
if (!existsSync(atomsDir)) {
|
|
980
932
|
await mkdir(atomsDir, { recursive: true });
|
|
981
933
|
}
|
|
982
|
-
const atomFile =
|
|
934
|
+
const atomFile = join(atomsDir, `${atom.externalId}.json`);
|
|
983
935
|
await writeFile(atomFile, JSON.stringify(atom, null, 2));
|
|
984
936
|
}
|
|
985
937
|
async function loadAtom(atomId) {
|
|
986
|
-
const atomFile =
|
|
987
|
-
if (!
|
|
938
|
+
const atomFile = join(process.cwd(), ATOMS_DIR, `${atomId}.json`);
|
|
939
|
+
if (!existsSync(atomFile)) {
|
|
988
940
|
return null;
|
|
989
941
|
}
|
|
990
|
-
const content = await
|
|
942
|
+
const content = await readFile(atomFile, "utf-8");
|
|
991
943
|
return JSON.parse(content);
|
|
992
944
|
}
|
|
993
945
|
async function listLocalAtoms() {
|
|
994
|
-
const atomsDir =
|
|
995
|
-
if (!
|
|
946
|
+
const atomsDir = join(process.cwd(), ATOMS_DIR);
|
|
947
|
+
if (!existsSync(atomsDir)) {
|
|
996
948
|
return [];
|
|
997
949
|
}
|
|
998
950
|
const { readdir } = await import("fs/promises");
|
|
@@ -1011,7 +963,6 @@ async function listLocalAtoms() {
|
|
|
1011
963
|
|
|
1012
964
|
export {
|
|
1013
965
|
UsageRecorder,
|
|
1014
|
-
loadRoleOverrides,
|
|
1015
966
|
plan,
|
|
1016
967
|
parseAtomDescription,
|
|
1017
968
|
loadAtom,
|
|
@@ -1,12 +1,19 @@
|
|
|
1
|
-
import {
|
|
2
|
-
createAuthedSupabaseClient,
|
|
3
|
-
getAuthToken,
|
|
4
|
-
loadConfig
|
|
5
|
-
} from "./chunk-SUGIWSCB.js";
|
|
6
1
|
import {
|
|
7
2
|
SUPABASE_ANON_KEY,
|
|
8
3
|
SUPABASE_URL
|
|
9
4
|
} from "./chunk-M4LGRTLC.js";
|
|
5
|
+
import {
|
|
6
|
+
getAuthToken,
|
|
7
|
+
loadConfig
|
|
8
|
+
} from "./chunk-SVU7MLG6.js";
|
|
9
|
+
|
|
10
|
+
// src/core/supabase/client.ts
|
|
11
|
+
import { createClient } from "@supabase/supabase-js";
|
|
12
|
+
function createAuthedSupabaseClient(supabaseUrl, supabaseAnonKey, accessToken) {
|
|
13
|
+
return createClient(supabaseUrl, supabaseAnonKey, {
|
|
14
|
+
global: { headers: { Authorization: `Bearer ${accessToken}` } }
|
|
15
|
+
});
|
|
16
|
+
}
|
|
10
17
|
|
|
11
18
|
// src/cli/cloud.ts
|
|
12
19
|
import chalk from "chalk";
|
|
@@ -166,6 +173,7 @@ function getStatusIcon(status) {
|
|
|
166
173
|
}
|
|
167
174
|
|
|
168
175
|
export {
|
|
176
|
+
createAuthedSupabaseClient,
|
|
169
177
|
cloudStatus,
|
|
170
178
|
cloudCancel,
|
|
171
179
|
cloudLogs,
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
+
import {
|
|
2
|
+
SUPABASE_ANON_KEY,
|
|
3
|
+
SUPABASE_URL
|
|
4
|
+
} from "./chunk-M4LGRTLC.js";
|
|
1
5
|
import {
|
|
2
6
|
handleTierSetup,
|
|
3
7
|
promptTierSelection,
|
|
4
8
|
updateUserTier
|
|
5
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-LBBHM4I5.js";
|
|
6
10
|
import {
|
|
7
11
|
clearConfig,
|
|
8
|
-
createPkceSupabaseClient,
|
|
9
12
|
loadConfig,
|
|
10
13
|
saveConfig
|
|
11
|
-
} from "./chunk-
|
|
12
|
-
import {
|
|
13
|
-
SUPABASE_ANON_KEY,
|
|
14
|
-
SUPABASE_URL
|
|
15
|
-
} from "./chunk-M4LGRTLC.js";
|
|
14
|
+
} from "./chunk-SVU7MLG6.js";
|
|
16
15
|
|
|
17
16
|
// src/cli/auth.ts
|
|
17
|
+
import { createClient } from "@supabase/supabase-js";
|
|
18
18
|
import { createServer } from "http";
|
|
19
19
|
import { URL } from "url";
|
|
20
20
|
import readline from "readline";
|
|
@@ -24,7 +24,11 @@ import ora from "ora";
|
|
|
24
24
|
var CALLBACK_PORT = 54321;
|
|
25
25
|
var CALLBACK_URL = `http://localhost:${CALLBACK_PORT}/callback`;
|
|
26
26
|
function getAuthClient() {
|
|
27
|
-
return
|
|
27
|
+
return createClient(SUPABASE_URL, SUPABASE_ANON_KEY, {
|
|
28
|
+
auth: {
|
|
29
|
+
flowType: "pkce"
|
|
30
|
+
}
|
|
31
|
+
});
|
|
28
32
|
}
|
|
29
33
|
async function login(providerOrOptions = "github") {
|
|
30
34
|
const options = typeof providerOrOptions === "string" ? { provider: providerOrOptions } : providerOrOptions;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
|
+
createAuthedSupabaseClient,
|
|
2
3
|
getGitBranch,
|
|
3
4
|
getGitRemoteUrl,
|
|
4
5
|
queueCloudExecution
|
|
5
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-4YEJ26F7.js";
|
|
6
7
|
import {
|
|
7
8
|
UsageRecorder,
|
|
8
|
-
loadAtom
|
|
9
|
-
|
|
10
|
-
} from "./chunk-BKJISQXP.js";
|
|
9
|
+
loadAtom
|
|
10
|
+
} from "./chunk-3PZ7WU5I.js";
|
|
11
11
|
import {
|
|
12
12
|
ArchitectureParser
|
|
13
13
|
} from "./chunk-5EVHUDQX.js";
|
|
@@ -18,14 +18,13 @@ import {
|
|
|
18
18
|
AnthropicClient,
|
|
19
19
|
getDefaultModel
|
|
20
20
|
} from "./chunk-HJARQDQR.js";
|
|
21
|
-
import {
|
|
22
|
-
createAuthedSupabaseClient,
|
|
23
|
-
loadConfig
|
|
24
|
-
} from "./chunk-SUGIWSCB.js";
|
|
25
21
|
import {
|
|
26
22
|
SUPABASE_ANON_KEY,
|
|
27
23
|
SUPABASE_URL
|
|
28
24
|
} from "./chunk-M4LGRTLC.js";
|
|
25
|
+
import {
|
|
26
|
+
loadConfig
|
|
27
|
+
} from "./chunk-SVU7MLG6.js";
|
|
29
28
|
import {
|
|
30
29
|
__commonJS,
|
|
31
30
|
__require,
|
|
@@ -2850,16 +2849,16 @@ var require_js_yaml = __commonJS({
|
|
|
2850
2849
|
var require_js_yaml2 = __commonJS({
|
|
2851
2850
|
"node_modules/js-yaml/index.js"(exports, module) {
|
|
2852
2851
|
"use strict";
|
|
2853
|
-
var
|
|
2854
|
-
module.exports =
|
|
2852
|
+
var yaml3 = require_js_yaml();
|
|
2853
|
+
module.exports = yaml3;
|
|
2855
2854
|
}
|
|
2856
2855
|
});
|
|
2857
2856
|
|
|
2858
2857
|
// src/cli/execute.ts
|
|
2859
2858
|
import chalk2 from "chalk";
|
|
2860
|
-
import { existsSync as
|
|
2861
|
-
import { readFile as
|
|
2862
|
-
import { join as
|
|
2859
|
+
import { existsSync as existsSync9 } from "fs";
|
|
2860
|
+
import { readFile as readFile8, writeFile as writeFile4 } from "fs/promises";
|
|
2861
|
+
import { join as join4 } from "path";
|
|
2863
2862
|
import { spawnSync as spawnSync2 } from "child_process";
|
|
2864
2863
|
import { createInterface } from "readline";
|
|
2865
2864
|
import { basename } from "path";
|
|
@@ -4526,6 +4525,31 @@ var TrackedExecutorAgent = class {
|
|
|
4526
4525
|
}
|
|
4527
4526
|
};
|
|
4528
4527
|
|
|
4528
|
+
// src/core/config/roles.ts
|
|
4529
|
+
import { existsSync as existsSync7 } from "fs";
|
|
4530
|
+
import { readFile as readFile6 } from "fs/promises";
|
|
4531
|
+
import { join as join2 } from "path";
|
|
4532
|
+
import yaml from "yaml";
|
|
4533
|
+
async function loadRoleOverrides(cwd = process.cwd()) {
|
|
4534
|
+
const candidates = [
|
|
4535
|
+
join2(cwd, ".archon", "config.yaml"),
|
|
4536
|
+
join2(cwd, "archon.config.yaml")
|
|
4537
|
+
];
|
|
4538
|
+
for (const path of candidates) {
|
|
4539
|
+
if (!existsSync7(path)) continue;
|
|
4540
|
+
try {
|
|
4541
|
+
const content = await readFile6(path, "utf-8");
|
|
4542
|
+
const parsed = yaml.parse(content);
|
|
4543
|
+
if (parsed?.roles) {
|
|
4544
|
+
return parsed.roles;
|
|
4545
|
+
}
|
|
4546
|
+
} catch {
|
|
4547
|
+
continue;
|
|
4548
|
+
}
|
|
4549
|
+
}
|
|
4550
|
+
return null;
|
|
4551
|
+
}
|
|
4552
|
+
|
|
4529
4553
|
// src/core/git/rollback.ts
|
|
4530
4554
|
import { spawnSync } from "child_process";
|
|
4531
4555
|
function rollbackFiles(cwd, files) {
|
|
@@ -4572,9 +4596,9 @@ var DEFAULT_ENVIRONMENTS = {
|
|
|
4572
4596
|
|
|
4573
4597
|
// src/core/environments/config.ts
|
|
4574
4598
|
var import_js_yaml = __toESM(require_js_yaml2(), 1);
|
|
4575
|
-
import { existsSync as
|
|
4576
|
-
import { readFile as
|
|
4577
|
-
import { join as
|
|
4599
|
+
import { existsSync as existsSync8 } from "fs";
|
|
4600
|
+
import { readFile as readFile7 } from "fs/promises";
|
|
4601
|
+
import { join as join3 } from "path";
|
|
4578
4602
|
var VALID_GATES = [
|
|
4579
4603
|
"ARCHITECTURE",
|
|
4580
4604
|
"SYNTAX",
|
|
@@ -4591,18 +4615,18 @@ var EnvironmentConfigLoader = class {
|
|
|
4591
4615
|
this.cwd = cwd;
|
|
4592
4616
|
}
|
|
4593
4617
|
async loadConfig() {
|
|
4594
|
-
const configPath =
|
|
4595
|
-
if (
|
|
4618
|
+
const configPath = join3(this.cwd, "archon.config.yaml");
|
|
4619
|
+
if (existsSync8(configPath)) {
|
|
4596
4620
|
return this.loadFromConfigFile(configPath);
|
|
4597
4621
|
}
|
|
4598
|
-
const archPath =
|
|
4599
|
-
if (
|
|
4622
|
+
const archPath = join3(this.cwd, "ARCHITECTURE.md");
|
|
4623
|
+
if (existsSync8(archPath)) {
|
|
4600
4624
|
return this.loadFromArchitecture(archPath);
|
|
4601
4625
|
}
|
|
4602
4626
|
return DEFAULT_ENVIRONMENTS;
|
|
4603
4627
|
}
|
|
4604
4628
|
async loadFromConfigFile(configPath) {
|
|
4605
|
-
const content = await
|
|
4629
|
+
const content = await readFile7(configPath, "utf-8");
|
|
4606
4630
|
const config = import_js_yaml.default.load(content);
|
|
4607
4631
|
if (!config.environments) {
|
|
4608
4632
|
return DEFAULT_ENVIRONMENTS;
|
|
@@ -4610,7 +4634,7 @@ var EnvironmentConfigLoader = class {
|
|
|
4610
4634
|
return this.validateAndNormalize(config.environments);
|
|
4611
4635
|
}
|
|
4612
4636
|
async loadFromArchitecture(archPath) {
|
|
4613
|
-
const content = await
|
|
4637
|
+
const content = await readFile7(archPath, "utf-8");
|
|
4614
4638
|
const frontmatterMatch = content.match(/^---\n([\s\S]*?)\n---/);
|
|
4615
4639
|
if (!frontmatterMatch?.[1]) {
|
|
4616
4640
|
return DEFAULT_ENVIRONMENTS;
|
|
@@ -4767,7 +4791,7 @@ function createPrompt() {
|
|
|
4767
4791
|
}
|
|
4768
4792
|
async function execute(atomId, options) {
|
|
4769
4793
|
if (options.parallel && options.parallel.length > 0) {
|
|
4770
|
-
const { parallelExecute } = await import("./parallel-
|
|
4794
|
+
const { parallelExecute } = await import("./parallel-W2ETYYAL.js");
|
|
4771
4795
|
const allAtomIds = [atomId, ...options.parallel];
|
|
4772
4796
|
await parallelExecute(allAtomIds, { skipGates: options.skipGates === true });
|
|
4773
4797
|
return;
|
|
@@ -4868,8 +4892,8 @@ Repository: ${repoUrl}`));
|
|
|
4868
4892
|
console.log(chalk2.dim(`Run "archon plan" to create a plan first.`));
|
|
4869
4893
|
process.exit(1);
|
|
4870
4894
|
}
|
|
4871
|
-
const archPath =
|
|
4872
|
-
if (!
|
|
4895
|
+
const archPath = join4(cwd, "ARCHITECTURE.md");
|
|
4896
|
+
if (!existsSync9(archPath)) {
|
|
4873
4897
|
console.error(chalk2.red("ARCHITECTURE.md not found."));
|
|
4874
4898
|
process.exit(1);
|
|
4875
4899
|
}
|
|
@@ -5073,8 +5097,8 @@ Running quality gates for ${targetEnvName}...`));
|
|
|
5073
5097
|
}
|
|
5074
5098
|
}
|
|
5075
5099
|
async function saveAtom(atom) {
|
|
5076
|
-
const atomsDir =
|
|
5077
|
-
const atomFile =
|
|
5100
|
+
const atomsDir = join4(process.cwd(), ATOMS_DIR);
|
|
5101
|
+
const atomFile = join4(atomsDir, `${atom.externalId}.json`);
|
|
5078
5102
|
await writeFile4(atomFile, JSON.stringify(atom, null, 2));
|
|
5079
5103
|
}
|
|
5080
5104
|
async function captureLearnings(atom, execution) {
|
|
@@ -5097,22 +5121,22 @@ async function captureLearnings(atom, execution) {
|
|
|
5097
5121
|
}
|
|
5098
5122
|
}
|
|
5099
5123
|
async function loadAtomEnvironmentState(atomId, cwd) {
|
|
5100
|
-
const stateFile =
|
|
5101
|
-
if (!
|
|
5124
|
+
const stateFile = join4(cwd, ATOMS_DIR, `${atomId}.env.json`);
|
|
5125
|
+
if (!existsSync9(stateFile)) {
|
|
5102
5126
|
return null;
|
|
5103
5127
|
}
|
|
5104
|
-
const content = await
|
|
5128
|
+
const content = await readFile8(stateFile, "utf-8");
|
|
5105
5129
|
return JSON.parse(content);
|
|
5106
5130
|
}
|
|
5107
5131
|
async function saveAtomEnvironmentState(atomId, cwd, state) {
|
|
5108
|
-
const stateFile =
|
|
5132
|
+
const stateFile = join4(cwd, ATOMS_DIR, `${atomId}.env.json`);
|
|
5109
5133
|
await writeFile4(stateFile, JSON.stringify(state, null, 2));
|
|
5110
5134
|
}
|
|
5111
5135
|
async function watchCloudExecution(executionId) {
|
|
5112
5136
|
const pollInterval = 5e3;
|
|
5113
5137
|
let lastLogCount = 0;
|
|
5114
5138
|
const poll = async () => {
|
|
5115
|
-
const { loadConfig: loadConfig2, getAuthToken } = await import("./config-
|
|
5139
|
+
const { loadConfig: loadConfig2, getAuthToken } = await import("./config-JBPM2YAB.js");
|
|
5116
5140
|
const { SUPABASE_URL: SUPABASE_URL2, SUPABASE_ANON_KEY: SUPABASE_ANON_KEY2 } = await import("./constants-XDIWFFPN.js");
|
|
5117
5141
|
const config = await loadConfig2();
|
|
5118
5142
|
const authToken = getAuthToken(config);
|
|
@@ -2,7 +2,7 @@ import {
|
|
|
2
2
|
getApiUrl,
|
|
3
3
|
loadConfig,
|
|
4
4
|
saveConfig
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-SVU7MLG6.js";
|
|
6
6
|
|
|
7
7
|
// src/cli/tier-selection.ts
|
|
8
8
|
import chalk from "chalk";
|
|
@@ -43,9 +43,9 @@ async function offerReauthentication(reason) {
|
|
|
43
43
|
return false;
|
|
44
44
|
}
|
|
45
45
|
console.log();
|
|
46
|
-
const { login } = await import("./auth-
|
|
46
|
+
const { login } = await import("./auth-HQBAG4CR.js");
|
|
47
47
|
await login({ skipTierSelection: true });
|
|
48
|
-
const { loadConfig: reload } = await import("./config-
|
|
48
|
+
const { loadConfig: reload } = await import("./config-JBPM2YAB.js");
|
|
49
49
|
const config = await reload();
|
|
50
50
|
return !!(config && config.accessToken);
|
|
51
51
|
}
|
|
@@ -207,7 +207,7 @@ async function promptForApiKey() {
|
|
|
207
207
|
return;
|
|
208
208
|
}
|
|
209
209
|
if (provider) {
|
|
210
|
-
const { addKey } = await import("./keys-
|
|
210
|
+
const { addKey } = await import("./keys-U4QZE5YB.js");
|
|
211
211
|
await addKey(provider, {});
|
|
212
212
|
console.log();
|
|
213
213
|
const addAnother = await promptYesNo("Would you like to add another API key?", false);
|
|
@@ -219,7 +219,7 @@ async function promptForApiKey() {
|
|
|
219
219
|
async function createCheckoutSession(amountCents) {
|
|
220
220
|
const spinner = ora("Preparing checkout...").start();
|
|
221
221
|
try {
|
|
222
|
-
const { ensureValidSession, loadConfig: loadConfig2 } = await import("./config-
|
|
222
|
+
const { ensureValidSession, loadConfig: loadConfig2 } = await import("./config-JBPM2YAB.js");
|
|
223
223
|
let config = await ensureValidSession();
|
|
224
224
|
if (!config || !config.accessToken || !config.userId) {
|
|
225
225
|
spinner.stop();
|
|
@@ -367,7 +367,7 @@ Switching to ${selectedName}...`));
|
|
|
367
367
|
var showTierSwitchMenu = showUpgradeMenu;
|
|
368
368
|
async function updateUserTier(tier, _alreadyRetried = false) {
|
|
369
369
|
try {
|
|
370
|
-
const { ensureValidSession, loadConfig: reload } = await import("./config-
|
|
370
|
+
const { ensureValidSession, loadConfig: reload } = await import("./config-JBPM2YAB.js");
|
|
371
371
|
let config = await ensureValidSession();
|
|
372
372
|
if (!config || !config.accessToken) {
|
|
373
373
|
if (_alreadyRetried) {
|
|
@@ -455,7 +455,7 @@ function promptYesNo(question, defaultValue) {
|
|
|
455
455
|
}
|
|
456
456
|
async function showKeyManagementMenu() {
|
|
457
457
|
const { keyManager } = await import("./keys-THCHXIFD.js");
|
|
458
|
-
const { listKeys, addKey, removeKey } = await import("./keys-
|
|
458
|
+
const { listKeys, addKey, removeKey } = await import("./keys-U4QZE5YB.js");
|
|
459
459
|
console.log();
|
|
460
460
|
console.log(chalk.bold("API Key Management"));
|
|
461
461
|
console.log(chalk.dim("\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501"));
|
|
@@ -2,14 +2,14 @@ import {
|
|
|
2
2
|
getGitBranch,
|
|
3
3
|
getGitRemoteUrl,
|
|
4
4
|
queueCloudExecution
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-4YEJ26F7.js";
|
|
6
6
|
import {
|
|
7
7
|
listLocalAtoms,
|
|
8
8
|
loadAtom
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-3PZ7WU5I.js";
|
|
10
10
|
import {
|
|
11
11
|
loadConfig
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-SVU7MLG6.js";
|
|
13
13
|
|
|
14
14
|
// src/cli/parallel.ts
|
|
15
15
|
import chalk from "chalk";
|
|
@@ -13,7 +13,7 @@ function isInitialized(cwd) {
|
|
|
13
13
|
if (existsSync(archMdPath)) {
|
|
14
14
|
try {
|
|
15
15
|
const content = readFileSync(archMdPath, "utf-8");
|
|
16
|
-
return content.startsWith("---") && content.includes("version:") &&
|
|
16
|
+
return content.startsWith("---") && content.includes("version:") && content.includes("qualityLevel:");
|
|
17
17
|
} catch {
|
|
18
18
|
return false;
|
|
19
19
|
}
|
|
@@ -1,32 +1,13 @@
|
|
|
1
|
-
import {
|
|
2
|
-
SUPABASE_ANON_KEY,
|
|
3
|
-
SUPABASE_URL
|
|
4
|
-
} from "./chunk-M4LGRTLC.js";
|
|
5
|
-
|
|
6
1
|
// src/cli/config.ts
|
|
7
2
|
import { homedir } from "os";
|
|
8
3
|
import { join } from "path";
|
|
9
4
|
import { readFile, writeFile, mkdir, chmod, unlink } from "fs/promises";
|
|
10
5
|
import { existsSync } from "fs";
|
|
11
|
-
|
|
12
|
-
// src/core/supabase/client.ts
|
|
13
6
|
import { createClient } from "@supabase/supabase-js";
|
|
14
|
-
function createPkceSupabaseClient(supabaseUrl, supabaseAnonKey) {
|
|
15
|
-
return createClient(supabaseUrl, supabaseAnonKey, {
|
|
16
|
-
auth: {
|
|
17
|
-
flowType: "pkce"
|
|
18
|
-
}
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
function createAuthedSupabaseClient(supabaseUrl, supabaseAnonKey, accessToken) {
|
|
22
|
-
return createClient(supabaseUrl, supabaseAnonKey, {
|
|
23
|
-
global: { headers: { Authorization: `Bearer ${accessToken}` } }
|
|
24
|
-
});
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
// src/cli/config.ts
|
|
28
7
|
var CONFIG_DIR = join(homedir(), ".archon");
|
|
29
8
|
var CONFIG_FILE = join(CONFIG_DIR, "config.json");
|
|
9
|
+
var SUPABASE_URL = "https://yjdkcepktrbabmzhcmrt.supabase.co";
|
|
10
|
+
var SUPABASE_ANON_KEY = "sb_publishable_XSGLVPfLZx-HA2uL6xsGCQ_KjAx2TIa";
|
|
30
11
|
function getAuthToken(config) {
|
|
31
12
|
return config.accessToken;
|
|
32
13
|
}
|
|
@@ -91,7 +72,9 @@ async function refreshSession(config) {
|
|
|
91
72
|
return false;
|
|
92
73
|
}
|
|
93
74
|
try {
|
|
94
|
-
const supabase =
|
|
75
|
+
const supabase = createClient(SUPABASE_URL, SUPABASE_ANON_KEY, {
|
|
76
|
+
auth: { flowType: "pkce" }
|
|
77
|
+
});
|
|
95
78
|
const { data, error } = await supabase.auth.refreshSession({
|
|
96
79
|
refresh_token: config.refreshToken
|
|
97
80
|
});
|
|
@@ -129,8 +112,6 @@ async function getCurrentUser() {
|
|
|
129
112
|
}
|
|
130
113
|
|
|
131
114
|
export {
|
|
132
|
-
createPkceSupabaseClient,
|
|
133
|
-
createAuthedSupabaseClient,
|
|
134
115
|
getAuthToken,
|
|
135
116
|
getApiUrl,
|
|
136
117
|
loadConfig,
|
|
@@ -14,12 +14,12 @@ import {
|
|
|
14
14
|
} from "./chunk-RDG5BUED.js";
|
|
15
15
|
import {
|
|
16
16
|
login
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-CZCY63EY.js";
|
|
18
18
|
import {
|
|
19
19
|
getApiUrl,
|
|
20
20
|
getAuthToken,
|
|
21
21
|
loadConfig
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-SVU7MLG6.js";
|
|
23
23
|
|
|
24
24
|
// src/cli/preferences.ts
|
|
25
25
|
import chalk from "chalk";
|
|
@@ -1071,7 +1071,7 @@ async function manageApiKeys() {
|
|
|
1071
1071
|
if (removeIndex >= 0 && removeIndex < providers.length) {
|
|
1072
1072
|
const providerToRemove = providers[removeIndex];
|
|
1073
1073
|
if (providerToRemove) {
|
|
1074
|
-
const { removeKey } = await import("./keys-
|
|
1074
|
+
const { removeKey } = await import("./keys-U4QZE5YB.js");
|
|
1075
1075
|
await removeKey(providerToRemove);
|
|
1076
1076
|
}
|
|
1077
1077
|
}
|
|
@@ -1079,7 +1079,7 @@ async function manageApiKeys() {
|
|
|
1079
1079
|
}
|
|
1080
1080
|
const provider = providerMap[choice];
|
|
1081
1081
|
if (provider) {
|
|
1082
|
-
const { addKey } = await import("./keys-
|
|
1082
|
+
const { addKey } = await import("./keys-U4QZE5YB.js");
|
|
1083
1083
|
await addKey(provider);
|
|
1084
1084
|
}
|
|
1085
1085
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import {
|
|
2
2
|
execute
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
5
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-EKU62MGC.js";
|
|
4
|
+
import "./chunk-4YEJ26F7.js";
|
|
5
|
+
import "./chunk-3PZ7WU5I.js";
|
|
6
6
|
import "./chunk-5EVHUDQX.js";
|
|
7
7
|
import "./chunk-5CFGPXQ3.js";
|
|
8
8
|
import "./chunk-2NSWZDP7.js";
|
|
@@ -10,8 +10,8 @@ import "./chunk-HJARQDQR.js";
|
|
|
10
10
|
import "./chunk-UFR2LX6G.js";
|
|
11
11
|
import "./chunk-TFSHS7EN.js";
|
|
12
12
|
import "./chunk-RDG5BUED.js";
|
|
13
|
-
import "./chunk-SUGIWSCB.js";
|
|
14
13
|
import "./chunk-M4LGRTLC.js";
|
|
14
|
+
import "./chunk-SVU7MLG6.js";
|
|
15
15
|
import "./chunk-4VNS5WPM.js";
|
|
16
16
|
export {
|
|
17
17
|
execute
|
|
@@ -4,13 +4,12 @@ import {
|
|
|
4
4
|
geoFaq,
|
|
5
5
|
geoIdentity,
|
|
6
6
|
geoSchema
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-UD45ZLV3.js";
|
|
8
8
|
import "./chunk-3ASILTFB.js";
|
|
9
9
|
import "./chunk-2NSWZDP7.js";
|
|
10
10
|
import "./chunk-HJARQDQR.js";
|
|
11
11
|
import "./chunk-UFR2LX6G.js";
|
|
12
|
-
import "./chunk-
|
|
13
|
-
import "./chunk-M4LGRTLC.js";
|
|
12
|
+
import "./chunk-SVU7MLG6.js";
|
|
14
13
|
import "./chunk-4VNS5WPM.js";
|
|
15
14
|
export {
|
|
16
15
|
createGeoCommand,
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
createGeoCommand
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-UD45ZLV3.js";
|
|
5
5
|
import {
|
|
6
6
|
reviewAnalyze,
|
|
7
7
|
reviewExport,
|
|
@@ -22,7 +22,7 @@ import {
|
|
|
22
22
|
setPreference,
|
|
23
23
|
showExecutionPreferences,
|
|
24
24
|
showPreferences
|
|
25
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-ZJXIOETW.js";
|
|
26
26
|
import {
|
|
27
27
|
a11yBadge,
|
|
28
28
|
a11yCheck,
|
|
@@ -36,7 +36,7 @@ import "./chunk-3ASILTFB.js";
|
|
|
36
36
|
import {
|
|
37
37
|
init,
|
|
38
38
|
isInitialized
|
|
39
|
-
} from "./chunk-
|
|
39
|
+
} from "./chunk-P666JE3G.js";
|
|
40
40
|
import {
|
|
41
41
|
parallelClean,
|
|
42
42
|
parallelExecuteCloud,
|
|
@@ -44,32 +44,33 @@ import {
|
|
|
44
44
|
parallelRunWaves,
|
|
45
45
|
parallelSchedule,
|
|
46
46
|
parallelStatus
|
|
47
|
-
} from "./chunk-
|
|
47
|
+
} from "./chunk-NCPHO54C.js";
|
|
48
48
|
import {
|
|
49
49
|
DependencyParser,
|
|
50
50
|
EnvironmentConfigLoader,
|
|
51
51
|
EnvironmentValidator,
|
|
52
52
|
execute
|
|
53
|
-
} from "./chunk-
|
|
53
|
+
} from "./chunk-EKU62MGC.js";
|
|
54
54
|
import {
|
|
55
55
|
cloudCancel,
|
|
56
56
|
cloudLogs,
|
|
57
|
-
cloudStatus
|
|
58
|
-
|
|
57
|
+
cloudStatus,
|
|
58
|
+
createAuthedSupabaseClient
|
|
59
|
+
} from "./chunk-4YEJ26F7.js";
|
|
59
60
|
import {
|
|
60
61
|
list
|
|
61
|
-
} from "./chunk-
|
|
62
|
+
} from "./chunk-NJF6MRTR.js";
|
|
62
63
|
import {
|
|
63
64
|
listLocalAtoms,
|
|
64
65
|
loadAtom,
|
|
65
66
|
plan
|
|
66
|
-
} from "./chunk-
|
|
67
|
+
} from "./chunk-3PZ7WU5I.js";
|
|
67
68
|
import {
|
|
68
69
|
ArchitectureParser
|
|
69
70
|
} from "./chunk-5EVHUDQX.js";
|
|
70
71
|
import {
|
|
71
72
|
bugReport
|
|
72
|
-
} from "./chunk-
|
|
73
|
+
} from "./chunk-VF2OTDMS.js";
|
|
73
74
|
import "./chunk-5CFGPXQ3.js";
|
|
74
75
|
import "./chunk-2NSWZDP7.js";
|
|
75
76
|
import "./chunk-HJARQDQR.js";
|
|
@@ -79,30 +80,29 @@ import {
|
|
|
79
80
|
listKeys,
|
|
80
81
|
removeKey,
|
|
81
82
|
setPrimaryKey
|
|
82
|
-
} from "./chunk-
|
|
83
|
+
} from "./chunk-75J2JMU3.js";
|
|
83
84
|
import "./chunk-TFSHS7EN.js";
|
|
84
85
|
import "./chunk-RDG5BUED.js";
|
|
85
86
|
import {
|
|
86
87
|
login,
|
|
87
88
|
logout,
|
|
88
89
|
status
|
|
89
|
-
} from "./chunk-
|
|
90
|
+
} from "./chunk-CZCY63EY.js";
|
|
91
|
+
import {
|
|
92
|
+
API_URL,
|
|
93
|
+
SUPABASE_ANON_KEY,
|
|
94
|
+
SUPABASE_URL
|
|
95
|
+
} from "./chunk-M4LGRTLC.js";
|
|
90
96
|
import {
|
|
91
97
|
handleTierSetup,
|
|
92
98
|
promptTierSelection,
|
|
93
99
|
updateUserTier
|
|
94
|
-
} from "./chunk-
|
|
100
|
+
} from "./chunk-LBBHM4I5.js";
|
|
95
101
|
import {
|
|
96
|
-
createAuthedSupabaseClient,
|
|
97
102
|
getAuthToken,
|
|
98
103
|
loadConfig,
|
|
99
104
|
saveConfig
|
|
100
|
-
} from "./chunk-
|
|
101
|
-
import {
|
|
102
|
-
API_URL,
|
|
103
|
-
SUPABASE_ANON_KEY,
|
|
104
|
-
SUPABASE_URL
|
|
105
|
-
} from "./chunk-M4LGRTLC.js";
|
|
105
|
+
} from "./chunk-SVU7MLG6.js";
|
|
106
106
|
import "./chunk-4VNS5WPM.js";
|
|
107
107
|
|
|
108
108
|
// src/cli/index.ts
|
|
@@ -2817,22 +2817,22 @@ async function start(options = {}) {
|
|
|
2817
2817
|
const choice = await promptWithCommands("What would you like to do?");
|
|
2818
2818
|
switch (choice) {
|
|
2819
2819
|
case "1":
|
|
2820
|
-
const { handleTierSetup: handleTierSetup2 } = await import("./tier-selection-
|
|
2820
|
+
const { handleTierSetup: handleTierSetup2 } = await import("./tier-selection-426HA765.js");
|
|
2821
2821
|
await handleTierSetup2("BYOK");
|
|
2822
2822
|
break;
|
|
2823
2823
|
case "2":
|
|
2824
|
-
const { updateUserTier: updateUserTier2 } = await import("./tier-selection-
|
|
2824
|
+
const { updateUserTier: updateUserTier2 } = await import("./tier-selection-426HA765.js");
|
|
2825
2825
|
const result = await updateUserTier2("CREDITS");
|
|
2826
2826
|
if (result.success) {
|
|
2827
2827
|
config.tier = "CREDITS";
|
|
2828
2828
|
await saveConfig(config);
|
|
2829
2829
|
console.log(chalk6.green("\u2713 Switched to Managed Plan"));
|
|
2830
|
-
const { handleTierSetup: setupCredits } = await import("./tier-selection-
|
|
2830
|
+
const { handleTierSetup: setupCredits } = await import("./tier-selection-426HA765.js");
|
|
2831
2831
|
await setupCredits("CREDITS");
|
|
2832
2832
|
}
|
|
2833
2833
|
break;
|
|
2834
2834
|
case "3":
|
|
2835
|
-
const { updateUserTier: downgrade } = await import("./tier-selection-
|
|
2835
|
+
const { updateUserTier: downgrade } = await import("./tier-selection-426HA765.js");
|
|
2836
2836
|
const downgradeResult = await downgrade("FREE");
|
|
2837
2837
|
if (downgradeResult.success) {
|
|
2838
2838
|
config.tier = "FREE";
|
|
@@ -2853,7 +2853,7 @@ async function start(options = {}) {
|
|
|
2853
2853
|
const projectState = detectProjectState(cwd);
|
|
2854
2854
|
if (!projectState.hasArchitecture) {
|
|
2855
2855
|
console.log(chalk6.dim("No project initialized in this folder.\n"));
|
|
2856
|
-
const { init: init2 } = await import("./init-
|
|
2856
|
+
const { init: init2 } = await import("./init-FINETS3Q.js");
|
|
2857
2857
|
await init2({ analyze: true, git: true });
|
|
2858
2858
|
console.log();
|
|
2859
2859
|
const newProjectState = detectProjectState(cwd);
|
|
@@ -3085,7 +3085,7 @@ async function handleNewProject(cwd, _state) {
|
|
|
3085
3085
|
}
|
|
3086
3086
|
if (intent.mode === "ad_hoc" && intent.confidence >= 0.7) {
|
|
3087
3087
|
console.log(chalk6.dim("\n> Got it! Creating a task for this...\n"));
|
|
3088
|
-
const { plan: plan2 } = await import("./plan-
|
|
3088
|
+
const { plan: plan2 } = await import("./plan-XALA4SLH.js");
|
|
3089
3089
|
await plan2(initialResponse, {});
|
|
3090
3090
|
return;
|
|
3091
3091
|
}
|
|
@@ -3109,7 +3109,7 @@ async function handleNewProject(cwd, _state) {
|
|
|
3109
3109
|
break;
|
|
3110
3110
|
case "2":
|
|
3111
3111
|
console.log(chalk6.dim("\n> Creating a task for this...\n"));
|
|
3112
|
-
const { plan: plan2 } = await import("./plan-
|
|
3112
|
+
const { plan: plan2 } = await import("./plan-XALA4SLH.js");
|
|
3113
3113
|
await plan2(initialResponse, {});
|
|
3114
3114
|
break;
|
|
3115
3115
|
case "3":
|
|
@@ -3139,7 +3139,7 @@ async function showNewProjectMenu(cwd) {
|
|
|
3139
3139
|
case "3": {
|
|
3140
3140
|
const description = await prompt("Describe what you want to do");
|
|
3141
3141
|
if (description.trim()) {
|
|
3142
|
-
const { plan: plan2 } = await import("./plan-
|
|
3142
|
+
const { plan: plan2 } = await import("./plan-XALA4SLH.js");
|
|
3143
3143
|
await plan2(description, {});
|
|
3144
3144
|
}
|
|
3145
3145
|
break;
|
|
@@ -3205,7 +3205,7 @@ async function runExploreFlow(cwd) {
|
|
|
3205
3205
|
case "1": {
|
|
3206
3206
|
const description = await prompt("Describe what you want to do");
|
|
3207
3207
|
if (description.trim()) {
|
|
3208
|
-
const { plan: plan2 } = await import("./plan-
|
|
3208
|
+
const { plan: plan2 } = await import("./plan-XALA4SLH.js");
|
|
3209
3209
|
await plan2(description, {});
|
|
3210
3210
|
}
|
|
3211
3211
|
break;
|
|
@@ -3313,7 +3313,7 @@ async function gatherProjectInfo(cwd) {
|
|
|
3313
3313
|
return info;
|
|
3314
3314
|
}
|
|
3315
3315
|
async function runConversationalInterview(cwd, initialMessage) {
|
|
3316
|
-
const { InterviewerAgent, createInterviewerAgent } = await import("./interviewer-
|
|
3316
|
+
const { InterviewerAgent, createInterviewerAgent } = await import("./interviewer-NQHNMVH4.js");
|
|
3317
3317
|
const agent = await createInterviewerAgent();
|
|
3318
3318
|
if (agent && agent.isAvailable()) {
|
|
3319
3319
|
await runAIInterview(cwd, initialMessage, agent);
|
|
@@ -3464,7 +3464,7 @@ ${state.forbiddenPatterns?.length ? `- **Forbidden patterns:** ${state.forbidden
|
|
|
3464
3464
|
if (continueChoice) {
|
|
3465
3465
|
const description = await prompt("Describe what you want to build first");
|
|
3466
3466
|
if (description.trim()) {
|
|
3467
|
-
const { plan: plan2 } = await import("./plan-
|
|
3467
|
+
const { plan: plan2 } = await import("./plan-XALA4SLH.js");
|
|
3468
3468
|
await plan2(description, {});
|
|
3469
3469
|
}
|
|
3470
3470
|
}
|
|
@@ -3518,7 +3518,7 @@ async function handleAdaptExisting(cwd, state) {
|
|
|
3518
3518
|
}
|
|
3519
3519
|
if (intent.mode === "ad_hoc" && intent.confidence >= 0.7) {
|
|
3520
3520
|
console.log(chalk6.dim("\n> Got it! Creating a task for this...\n"));
|
|
3521
|
-
const { plan: plan2 } = await import("./plan-
|
|
3521
|
+
const { plan: plan2 } = await import("./plan-XALA4SLH.js");
|
|
3522
3522
|
await plan2(response, {});
|
|
3523
3523
|
return;
|
|
3524
3524
|
}
|
|
@@ -3549,7 +3549,7 @@ async function showAdaptExistingMenu(cwd, state) {
|
|
|
3549
3549
|
case "2": {
|
|
3550
3550
|
const description = await prompt("Describe what you want to do");
|
|
3551
3551
|
if (description.trim()) {
|
|
3552
|
-
const { plan: plan2 } = await import("./plan-
|
|
3552
|
+
const { plan: plan2 } = await import("./plan-XALA4SLH.js");
|
|
3553
3553
|
await plan2(description, {});
|
|
3554
3554
|
}
|
|
3555
3555
|
break;
|
|
@@ -3574,7 +3574,7 @@ async function showAdaptExistingMenu(cwd, state) {
|
|
|
3574
3574
|
}
|
|
3575
3575
|
async function analyzeAndAdapt(cwd) {
|
|
3576
3576
|
console.log(chalk6.blue("\n-- Analyzing Project --\n"));
|
|
3577
|
-
const { init: init2 } = await import("./init-
|
|
3577
|
+
const { init: init2 } = await import("./init-FINETS3Q.js");
|
|
3578
3578
|
await init2({ analyze: true, git: true });
|
|
3579
3579
|
const today = (/* @__PURE__ */ new Date()).toISOString().split("T")[0];
|
|
3580
3580
|
const progressPath = join6(cwd, "progress.txt");
|
|
@@ -3678,7 +3678,7 @@ async function showMainMenu() {
|
|
|
3678
3678
|
} }] : [],
|
|
3679
3679
|
{ key: "7", label: "Settings & Preferences", action: () => settingsMenu() },
|
|
3680
3680
|
{ key: "8", label: "Upgrade tier", action: async () => {
|
|
3681
|
-
const { showUpgradeMenu } = await import("./tier-selection-
|
|
3681
|
+
const { showUpgradeMenu } = await import("./tier-selection-426HA765.js");
|
|
3682
3682
|
await showUpgradeMenu();
|
|
3683
3683
|
await showMainMenu();
|
|
3684
3684
|
} },
|
|
@@ -3717,20 +3717,20 @@ async function showReviewProgress(cwd) {
|
|
|
3717
3717
|
}
|
|
3718
3718
|
}
|
|
3719
3719
|
async function planTask() {
|
|
3720
|
-
const { plan: plan2 } = await import("./plan-
|
|
3720
|
+
const { plan: plan2 } = await import("./plan-XALA4SLH.js");
|
|
3721
3721
|
const description = await prompt("Describe what you want to build");
|
|
3722
3722
|
if (description.trim()) {
|
|
3723
3723
|
await plan2(description, {});
|
|
3724
3724
|
}
|
|
3725
3725
|
}
|
|
3726
3726
|
async function listAtoms() {
|
|
3727
|
-
const { list: list2 } = await import("./list-
|
|
3727
|
+
const { list: list2 } = await import("./list-CNKAH354.js");
|
|
3728
3728
|
await list2({});
|
|
3729
3729
|
}
|
|
3730
3730
|
async function executeNext() {
|
|
3731
|
-
const { listLocalAtoms: listLocalAtoms2 } = await import("./plan-
|
|
3731
|
+
const { listLocalAtoms: listLocalAtoms2 } = await import("./plan-XALA4SLH.js");
|
|
3732
3732
|
const { analyzeProject, getComplexityDescription, getModeDescription } = await import("./orchestration-HIF3KP25.js");
|
|
3733
|
-
const { loadExecutionPreferences } = await import("./preferences-
|
|
3733
|
+
const { loadExecutionPreferences } = await import("./preferences-I6WETXOI.js");
|
|
3734
3734
|
const cwd = process.cwd();
|
|
3735
3735
|
const atoms = await listLocalAtoms2();
|
|
3736
3736
|
const pendingAtoms = atoms.filter((a) => a.status === "READY" || a.status === "IN_PROGRESS");
|
|
@@ -3799,11 +3799,11 @@ async function executeNext() {
|
|
|
3799
3799
|
}
|
|
3800
3800
|
}
|
|
3801
3801
|
if (selectedMode === "parallel-cloud") {
|
|
3802
|
-
const { parallelExecuteCloud: parallelExecuteCloud2 } = await import("./parallel-
|
|
3802
|
+
const { parallelExecuteCloud: parallelExecuteCloud2 } = await import("./parallel-W2ETYYAL.js");
|
|
3803
3803
|
await parallelExecuteCloud2(runIds);
|
|
3804
3804
|
return;
|
|
3805
3805
|
}
|
|
3806
|
-
const { parallelExecute } = await import("./parallel-
|
|
3806
|
+
const { parallelExecute } = await import("./parallel-W2ETYYAL.js");
|
|
3807
3807
|
await parallelExecute(runIds);
|
|
3808
3808
|
return;
|
|
3809
3809
|
}
|
|
@@ -3811,25 +3811,25 @@ async function executeNext() {
|
|
|
3811
3811
|
const atomId = await prompt("Enter atom ID to execute (or press Enter for first pending)");
|
|
3812
3812
|
const targetId = atomId.trim() || pendingAtoms[0]?.id;
|
|
3813
3813
|
if (targetId) {
|
|
3814
|
-
const { execute: execute2 } = await import("./execute-
|
|
3814
|
+
const { execute: execute2 } = await import("./execute-MB4ZF3HQ.js");
|
|
3815
3815
|
await execute2(targetId, {});
|
|
3816
3816
|
} else {
|
|
3817
3817
|
console.log(chalk6.yellow("No atom to execute."));
|
|
3818
3818
|
}
|
|
3819
3819
|
}
|
|
3820
3820
|
async function reportBug() {
|
|
3821
|
-
const { bugReport: bugReport2 } = await import("./bug-
|
|
3821
|
+
const { bugReport: bugReport2 } = await import("./bug-5WRBCFRT.js");
|
|
3822
3822
|
const title = await prompt("Bug title");
|
|
3823
3823
|
if (title.trim()) {
|
|
3824
3824
|
await bugReport2(title, {});
|
|
3825
3825
|
}
|
|
3826
3826
|
}
|
|
3827
3827
|
async function viewStatus() {
|
|
3828
|
-
const { status: status2 } = await import("./auth-
|
|
3828
|
+
const { status: status2 } = await import("./auth-HQBAG4CR.js");
|
|
3829
3829
|
await status2();
|
|
3830
3830
|
}
|
|
3831
3831
|
async function settingsMenu() {
|
|
3832
|
-
const { interactiveSettings } = await import("./preferences-
|
|
3832
|
+
const { interactiveSettings } = await import("./preferences-I6WETXOI.js");
|
|
3833
3833
|
await interactiveSettings();
|
|
3834
3834
|
await showMainMenu();
|
|
3835
3835
|
}
|
|
@@ -3888,12 +3888,12 @@ async function reviewCode() {
|
|
|
3888
3888
|
async function handleInSessionCommand(input) {
|
|
3889
3889
|
const normalized = input.toLowerCase().trim();
|
|
3890
3890
|
if (normalized === "upgrade" || normalized === "archon upgrade" || normalized === "pricing" || normalized === "archon pricing") {
|
|
3891
|
-
const { showUpgradeMenu } = await import("./tier-selection-
|
|
3891
|
+
const { showUpgradeMenu } = await import("./tier-selection-426HA765.js");
|
|
3892
3892
|
await showUpgradeMenu();
|
|
3893
3893
|
return true;
|
|
3894
3894
|
}
|
|
3895
3895
|
if (normalized === "status" || normalized === "archon status") {
|
|
3896
|
-
const { status: status2 } = await import("./auth-
|
|
3896
|
+
const { status: status2 } = await import("./auth-HQBAG4CR.js");
|
|
3897
3897
|
await status2();
|
|
3898
3898
|
return true;
|
|
3899
3899
|
}
|
|
@@ -3909,7 +3909,7 @@ async function handleInSessionCommand(input) {
|
|
|
3909
3909
|
return true;
|
|
3910
3910
|
}
|
|
3911
3911
|
if (normalized === "keys" || normalized === "archon keys") {
|
|
3912
|
-
const { listKeys: listKeys2 } = await import("./keys-
|
|
3912
|
+
const { listKeys: listKeys2 } = await import("./keys-U4QZE5YB.js");
|
|
3913
3913
|
await listKeys2();
|
|
3914
3914
|
return true;
|
|
3915
3915
|
}
|
|
@@ -3944,7 +3944,7 @@ async function promptWithCommands(question) {
|
|
|
3944
3944
|
async function runWebChecksSuite() {
|
|
3945
3945
|
const { a11yCheck: a11yCheck2 } = await import("./a11y-O35BAA25.js");
|
|
3946
3946
|
const { seoCheck } = await import("./seo-PMI42KRZ.js");
|
|
3947
|
-
const { geoAudit } = await import("./geo-
|
|
3947
|
+
const { geoAudit } = await import("./geo-KV4IRGKN.js");
|
|
3948
3948
|
console.log(chalk6.blue("\nRunning web checks (A11y, SEO, GEO)...\n"));
|
|
3949
3949
|
await a11yCheck2({});
|
|
3950
3950
|
await seoCheck({});
|
|
@@ -3984,17 +3984,17 @@ async function showWebChecksMenu() {
|
|
|
3984
3984
|
break;
|
|
3985
3985
|
}
|
|
3986
3986
|
case "4": {
|
|
3987
|
-
const { geoAudit } = await import("./geo-
|
|
3987
|
+
const { geoAudit } = await import("./geo-KV4IRGKN.js");
|
|
3988
3988
|
await geoAudit();
|
|
3989
3989
|
break;
|
|
3990
3990
|
}
|
|
3991
3991
|
case "5": {
|
|
3992
|
-
const { geoIdentity } = await import("./geo-
|
|
3992
|
+
const { geoIdentity } = await import("./geo-KV4IRGKN.js");
|
|
3993
3993
|
await geoIdentity();
|
|
3994
3994
|
break;
|
|
3995
3995
|
}
|
|
3996
3996
|
case "6": {
|
|
3997
|
-
const { geoSchema } = await import("./geo-
|
|
3997
|
+
const { geoSchema } = await import("./geo-KV4IRGKN.js");
|
|
3998
3998
|
await geoSchema({});
|
|
3999
3999
|
break;
|
|
4000
4000
|
}
|
|
@@ -5727,7 +5727,10 @@ async function getCloudIndexer(cwd) {
|
|
|
5727
5727
|
embeddingApiKey: openaiKey,
|
|
5728
5728
|
projectId
|
|
5729
5729
|
});
|
|
5730
|
-
const
|
|
5730
|
+
const { createClient: createClient2 } = await import("@supabase/supabase-js");
|
|
5731
|
+
const client = createClient2(SUPABASE_URL, SUPABASE_ANON_KEY, {
|
|
5732
|
+
global: { headers: { Authorization: `Bearer ${authToken}` } }
|
|
5733
|
+
});
|
|
5731
5734
|
const { data: { user } } = await client.auth.getUser();
|
|
5732
5735
|
if (!user) {
|
|
5733
5736
|
console.error(chalk11.red("Failed to get user. Try logging in again."));
|
|
@@ -7007,11 +7010,11 @@ program.command("status").description("Show current user and project status").ac
|
|
|
7007
7010
|
await status();
|
|
7008
7011
|
});
|
|
7009
7012
|
program.command("upgrade").description("Upgrade your tier (BYOK for free unlimited, or Managed plan)").action(async () => {
|
|
7010
|
-
const { showUpgradeMenu } = await import("./tier-selection-
|
|
7013
|
+
const { showUpgradeMenu } = await import("./tier-selection-426HA765.js");
|
|
7011
7014
|
await showUpgradeMenu();
|
|
7012
7015
|
});
|
|
7013
7016
|
program.command("pricing", { hidden: true }).action(async () => {
|
|
7014
|
-
const { showUpgradeMenu } = await import("./tier-selection-
|
|
7017
|
+
const { showUpgradeMenu } = await import("./tier-selection-426HA765.js");
|
|
7015
7018
|
await showUpgradeMenu();
|
|
7016
7019
|
});
|
|
7017
7020
|
program.command("init").description("Initialize ArchonDev in current project").option("--analyze", "Run enhanced analysis of codebase").option("--no-git", "Skip git initialization").action(async (options) => {
|
|
@@ -3,11 +3,10 @@ import {
|
|
|
3
3
|
listKeys,
|
|
4
4
|
removeKey,
|
|
5
5
|
setPrimaryKey
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-75J2JMU3.js";
|
|
7
7
|
import "./chunk-TFSHS7EN.js";
|
|
8
8
|
import "./chunk-RDG5BUED.js";
|
|
9
|
-
import "./chunk-
|
|
10
|
-
import "./chunk-M4LGRTLC.js";
|
|
9
|
+
import "./chunk-SVU7MLG6.js";
|
|
11
10
|
import "./chunk-4VNS5WPM.js";
|
|
12
11
|
export {
|
|
13
12
|
addKey,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
list
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-NJF6MRTR.js";
|
|
4
|
+
import "./chunk-3PZ7WU5I.js";
|
|
5
5
|
import "./chunk-5EVHUDQX.js";
|
|
6
6
|
import "./chunk-5CFGPXQ3.js";
|
|
7
7
|
import "./chunk-2NSWZDP7.js";
|
|
@@ -9,8 +9,8 @@ import "./chunk-HJARQDQR.js";
|
|
|
9
9
|
import "./chunk-UFR2LX6G.js";
|
|
10
10
|
import "./chunk-TFSHS7EN.js";
|
|
11
11
|
import "./chunk-RDG5BUED.js";
|
|
12
|
-
import "./chunk-SUGIWSCB.js";
|
|
13
12
|
import "./chunk-M4LGRTLC.js";
|
|
13
|
+
import "./chunk-SVU7MLG6.js";
|
|
14
14
|
import "./chunk-4VNS5WPM.js";
|
|
15
15
|
export {
|
|
16
16
|
list
|
|
@@ -6,9 +6,9 @@ import {
|
|
|
6
6
|
parallelRunWaves,
|
|
7
7
|
parallelSchedule,
|
|
8
8
|
parallelStatus
|
|
9
|
-
} from "./chunk-
|
|
10
|
-
import "./chunk-
|
|
11
|
-
import "./chunk-
|
|
9
|
+
} from "./chunk-NCPHO54C.js";
|
|
10
|
+
import "./chunk-4YEJ26F7.js";
|
|
11
|
+
import "./chunk-3PZ7WU5I.js";
|
|
12
12
|
import "./chunk-5EVHUDQX.js";
|
|
13
13
|
import "./chunk-5CFGPXQ3.js";
|
|
14
14
|
import "./chunk-2NSWZDP7.js";
|
|
@@ -16,8 +16,8 @@ import "./chunk-HJARQDQR.js";
|
|
|
16
16
|
import "./chunk-UFR2LX6G.js";
|
|
17
17
|
import "./chunk-TFSHS7EN.js";
|
|
18
18
|
import "./chunk-RDG5BUED.js";
|
|
19
|
-
import "./chunk-SUGIWSCB.js";
|
|
20
19
|
import "./chunk-M4LGRTLC.js";
|
|
20
|
+
import "./chunk-SVU7MLG6.js";
|
|
21
21
|
import "./chunk-4VNS5WPM.js";
|
|
22
22
|
export {
|
|
23
23
|
parallelClean,
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
loadAtom,
|
|
4
4
|
parseAtomDescription,
|
|
5
5
|
plan
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-3PZ7WU5I.js";
|
|
7
7
|
import "./chunk-5EVHUDQX.js";
|
|
8
8
|
import "./chunk-5CFGPXQ3.js";
|
|
9
9
|
import "./chunk-2NSWZDP7.js";
|
|
@@ -11,8 +11,8 @@ import "./chunk-HJARQDQR.js";
|
|
|
11
11
|
import "./chunk-UFR2LX6G.js";
|
|
12
12
|
import "./chunk-TFSHS7EN.js";
|
|
13
13
|
import "./chunk-RDG5BUED.js";
|
|
14
|
-
import "./chunk-SUGIWSCB.js";
|
|
15
14
|
import "./chunk-M4LGRTLC.js";
|
|
15
|
+
import "./chunk-SVU7MLG6.js";
|
|
16
16
|
import "./chunk-4VNS5WPM.js";
|
|
17
17
|
export {
|
|
18
18
|
listLocalAtoms,
|
|
@@ -7,14 +7,14 @@ import {
|
|
|
7
7
|
setPreference,
|
|
8
8
|
showExecutionPreferences,
|
|
9
9
|
showPreferences
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-ZJXIOETW.js";
|
|
11
11
|
import "./chunk-UFR2LX6G.js";
|
|
12
12
|
import "./chunk-TFSHS7EN.js";
|
|
13
13
|
import "./chunk-RDG5BUED.js";
|
|
14
|
-
import "./chunk-
|
|
15
|
-
import "./chunk-4VWKGOBQ.js";
|
|
16
|
-
import "./chunk-SUGIWSCB.js";
|
|
14
|
+
import "./chunk-CZCY63EY.js";
|
|
17
15
|
import "./chunk-M4LGRTLC.js";
|
|
16
|
+
import "./chunk-LBBHM4I5.js";
|
|
17
|
+
import "./chunk-SVU7MLG6.js";
|
|
18
18
|
import "./chunk-4VNS5WPM.js";
|
|
19
19
|
export {
|
|
20
20
|
interactiveSettings,
|
|
@@ -4,9 +4,8 @@ import {
|
|
|
4
4
|
showTierSwitchMenu,
|
|
5
5
|
showUpgradeMenu,
|
|
6
6
|
updateUserTier
|
|
7
|
-
} from "./chunk-
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-M4LGRTLC.js";
|
|
7
|
+
} from "./chunk-LBBHM4I5.js";
|
|
8
|
+
import "./chunk-SVU7MLG6.js";
|
|
10
9
|
import "./chunk-4VNS5WPM.js";
|
|
11
10
|
export {
|
|
12
11
|
handleTierSetup,
|