archondev 1.2.1 → 1.6.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/README.md +26 -4
- package/dist/{chunk-UG2ZZ7CM.js → chunk-K2VBICW3.js} +61 -40
- package/dist/{chunk-PK3OQVBG.js → chunk-NCJN4X5A.js} +1 -1
- package/dist/{chunk-I4ZVNLNO.js → chunk-S7UXMYWS.js} +212 -27
- package/dist/chunk-TJXGZB6T.js +342 -0
- package/dist/{execute-LYID2ODD.js → execute-6ZGARWT2.js} +3 -3
- package/dist/index.js +781 -525
- package/dist/init-YLAHY4CV.js +9 -0
- package/dist/{list-VXMVEIL5.js → list-UB4MOGRH.js} +3 -3
- package/dist/{plan-7VSFESVD.js → plan-WQUFH2WB.js} +2 -2
- package/dist/{preferences-PL2ON5VY.js → preferences-QEFXVCZN.js} +1 -1
- package/package.json +1 -1
- package/dist/{chunk-EDP55FCI.js → chunk-3AAQEUY6.js} +3 -3
package/README.md
CHANGED
|
@@ -9,10 +9,10 @@ The complete AI development system. It manages your entire development process s
|
|
|
9
9
|
|
|
10
10
|
```bash
|
|
11
11
|
# macOS/Linux:
|
|
12
|
-
npm install -g
|
|
12
|
+
npm install -g archon && archon
|
|
13
13
|
|
|
14
14
|
# Windows PowerShell:
|
|
15
|
-
npm install -g
|
|
15
|
+
npm install -g archon; archon
|
|
16
16
|
```
|
|
17
17
|
|
|
18
18
|
**What you get:**
|
|
@@ -20,6 +20,7 @@ npm install -g archondev; archon
|
|
|
20
20
|
- Adversarial planning (Architect proposes, Sentinel critiques)
|
|
21
21
|
- Automatic quality gates before changes are applied
|
|
22
22
|
- Learning persistence — mistakes are remembered and avoided
|
|
23
|
+
- **Dependency tracking** — prevent regressions with "what-breaks-what" map
|
|
23
24
|
- Bug reporting with root cause analysis
|
|
24
25
|
- AI-powered code review for any codebase
|
|
25
26
|
- Multi-provider key support with adversarial features
|
|
@@ -33,6 +34,11 @@ Copy governance files into any project. Works with your existing AI tools (Curso
|
|
|
33
34
|
- ARCHITECTURE.md template with best practices
|
|
34
35
|
- IDE-specific rule files (.cursorrules, CLAUDE.md, etc.)
|
|
35
36
|
- Progress tracking templates
|
|
37
|
+
- **DEPENDENCIES.md** — Track file-level dependencies to prevent regressions
|
|
38
|
+
- **First-Run Walkthrough** — Guided onboarding when AI detects your governance files
|
|
39
|
+
- **Code Review Mode** — Structured code review without changing your code
|
|
40
|
+
- **Local Database** — Track atoms and learnings in SQLite (no CLI required)
|
|
41
|
+
- **Memory Management** — Context handoff protocol for long sessions
|
|
36
42
|
- Works with any AI coding assistant
|
|
37
43
|
|
|
38
44
|
---
|
|
@@ -59,17 +65,32 @@ Copy governance files into any project. Works with your existing AI tools (Curso
|
|
|
59
65
|
| `archon keys list` | Show configured API keys by provider |
|
|
60
66
|
| `archon preferences` | Interactive settings menu (billing, models, keys, usage) |
|
|
61
67
|
| `archon models` | List available AI models |
|
|
68
|
+
| `archon deps list` | View file dependency rules |
|
|
69
|
+
| `archon deps add` | Add a new dependency rule |
|
|
70
|
+
| `archon deps check --files <list>` | Check for downstream impacts |
|
|
71
|
+
| `archon deps graph` | Generate Mermaid dependency diagram |
|
|
62
72
|
|
|
63
73
|
## Pricing
|
|
64
74
|
|
|
65
75
|
| Tier | Cost | What You Get |
|
|
66
76
|
|------|------|--------------|
|
|
67
|
-
| **Free** | $0 |
|
|
77
|
+
| **Free** | $0 | Ultra-cheap models (GPT-5-nano, GPT-4.1-nano, Gemini 2.5 Flash-Lite) — $0 cost to us |
|
|
68
78
|
| **Credits** | Pay as you go | All models, 10% service fee, deposit any amount |
|
|
69
79
|
| **BYOK** (Bring Your Own Key) | $0 | Use your own API keys, unlimited usage |
|
|
80
|
+
| **Claude Subscription** *(coming soon)* | Your existing sub | Use Claude Pro/Max subscription instead of API keys |
|
|
70
81
|
|
|
71
82
|
No subscriptions. No commitments. Start free.
|
|
72
83
|
|
|
84
|
+
### Claude Pro/Max Subscription Support (Coming Soon)
|
|
85
|
+
|
|
86
|
+
If you have an existing Claude subscription, you'll soon be able to use it with ArchonDev instead of API keys:
|
|
87
|
+
|
|
88
|
+
- **Claude Pro** ($20/mo) — Use your Pro subscription
|
|
89
|
+
- **Claude Max 5x** ($100/mo) — Higher limits for power users
|
|
90
|
+
- **Claude Max 20x** ($200/mo) — Maximum throughput
|
|
91
|
+
|
|
92
|
+
This works similarly to how Claude Code allows subscription-based access. We're currently waiting on Anthropic to provide a public OAuth API for third-party applications. **For now, use BYOK (bring your own API key)** — we'll notify you when subscription support is available.
|
|
93
|
+
|
|
73
94
|
## How It Works
|
|
74
95
|
|
|
75
96
|
1. **Define Your Rules** — Create ARCHITECTURE.md with boundaries and invariants
|
|
@@ -101,7 +122,8 @@ The CLI detects existing projects and suggests this workflow automatically.
|
|
|
101
122
|
|
|
102
123
|
## Documentation
|
|
103
124
|
|
|
104
|
-
[archondev.io](https://archondev.io)
|
|
125
|
+
- [archondev.io](https://archondev.io) — Main website with animated AI problems story
|
|
126
|
+
- [AI Coding Problems Research](docs/ai-coding-problems-research.md) — Market research on AI coding assistant issues
|
|
105
127
|
|
|
106
128
|
---
|
|
107
129
|
|
|
@@ -15,40 +15,54 @@ import readline from "readline";
|
|
|
15
15
|
// src/core/models/registry.json
|
|
16
16
|
var registry_default = {
|
|
17
17
|
lastUpdated: "2026-01-21T00:00:00Z",
|
|
18
|
-
version: "1.
|
|
18
|
+
version: "1.2.0",
|
|
19
19
|
providers: {
|
|
20
20
|
anthropic: {
|
|
21
21
|
displayName: "Anthropic",
|
|
22
22
|
fast: [
|
|
23
23
|
{
|
|
24
|
-
id: "claude-
|
|
25
|
-
name: "Claude
|
|
24
|
+
id: "claude-haiku-4-5",
|
|
25
|
+
name: "Claude Haiku 4.5",
|
|
26
26
|
active: true,
|
|
27
|
-
costPer1kInput:
|
|
28
|
-
costPer1kOutput:
|
|
27
|
+
costPer1kInput: 1e-3,
|
|
28
|
+
costPer1kOutput: 5e-3
|
|
29
29
|
}
|
|
30
30
|
],
|
|
31
31
|
thinking: [
|
|
32
32
|
{
|
|
33
|
-
id: "claude-
|
|
34
|
-
name: "Claude
|
|
33
|
+
id: "claude-sonnet-4-5-20250929",
|
|
34
|
+
name: "Claude Sonnet 4.5",
|
|
35
35
|
active: true,
|
|
36
36
|
default: true,
|
|
37
37
|
costPer1kInput: 3e-3,
|
|
38
38
|
costPer1kOutput: 0.015
|
|
39
39
|
},
|
|
40
40
|
{
|
|
41
|
-
id: "claude-
|
|
42
|
-
name: "Claude
|
|
41
|
+
id: "claude-opus-4-5-20251101",
|
|
42
|
+
name: "Claude Opus 4.5",
|
|
43
43
|
active: true,
|
|
44
|
-
costPer1kInput:
|
|
45
|
-
costPer1kOutput: 0.
|
|
44
|
+
costPer1kInput: 5e-3,
|
|
45
|
+
costPer1kOutput: 0.025
|
|
46
46
|
}
|
|
47
47
|
]
|
|
48
48
|
},
|
|
49
49
|
openai: {
|
|
50
50
|
displayName: "OpenAI",
|
|
51
51
|
fast: [
|
|
52
|
+
{
|
|
53
|
+
id: "gpt-5-nano",
|
|
54
|
+
name: "GPT-5 Nano",
|
|
55
|
+
active: true,
|
|
56
|
+
costPer1kInput: 25e-6,
|
|
57
|
+
costPer1kOutput: 2e-4
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
id: "gpt-4.1-nano",
|
|
61
|
+
name: "GPT-4.1 Nano",
|
|
62
|
+
active: true,
|
|
63
|
+
costPer1kInput: 5e-5,
|
|
64
|
+
costPer1kOutput: 2e-4
|
|
65
|
+
},
|
|
52
66
|
{
|
|
53
67
|
id: "gpt-4o-mini",
|
|
54
68
|
name: "GPT-4o Mini",
|
|
@@ -59,26 +73,26 @@ var registry_default = {
|
|
|
59
73
|
],
|
|
60
74
|
thinking: [
|
|
61
75
|
{
|
|
62
|
-
id: "gpt-
|
|
63
|
-
name: "GPT-
|
|
76
|
+
id: "gpt-5.2",
|
|
77
|
+
name: "GPT-5.2",
|
|
64
78
|
active: true,
|
|
65
79
|
default: true,
|
|
66
|
-
costPer1kInput:
|
|
67
|
-
costPer1kOutput: 0.
|
|
80
|
+
costPer1kInput: 3e-3,
|
|
81
|
+
costPer1kOutput: 0.012
|
|
68
82
|
},
|
|
69
83
|
{
|
|
70
|
-
id: "
|
|
71
|
-
name: "
|
|
84
|
+
id: "o3",
|
|
85
|
+
name: "o3",
|
|
72
86
|
active: true,
|
|
73
|
-
costPer1kInput:
|
|
74
|
-
costPer1kOutput:
|
|
87
|
+
costPer1kInput: 2e-3,
|
|
88
|
+
costPer1kOutput: 8e-3
|
|
75
89
|
},
|
|
76
90
|
{
|
|
77
|
-
id: "
|
|
78
|
-
name: "
|
|
91
|
+
id: "o4-mini",
|
|
92
|
+
name: "o4-mini",
|
|
79
93
|
active: true,
|
|
80
|
-
costPer1kInput:
|
|
81
|
-
costPer1kOutput:
|
|
94
|
+
costPer1kInput: 11e-4,
|
|
95
|
+
costPer1kOutput: 44e-4
|
|
82
96
|
}
|
|
83
97
|
]
|
|
84
98
|
},
|
|
@@ -86,42 +100,49 @@ var registry_default = {
|
|
|
86
100
|
displayName: "Google",
|
|
87
101
|
fast: [
|
|
88
102
|
{
|
|
89
|
-
id: "gemini-
|
|
90
|
-
name: "Gemini
|
|
103
|
+
id: "gemini-2.5-flash-lite",
|
|
104
|
+
name: "Gemini 2.5 Flash-Lite",
|
|
91
105
|
active: true,
|
|
92
106
|
costPer1kInput: 75e-6,
|
|
93
107
|
costPer1kOutput: 3e-4
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
id: "gemini-3-flash-preview",
|
|
111
|
+
name: "Gemini 3 Flash",
|
|
112
|
+
active: true,
|
|
113
|
+
costPer1kInput: 5e-4,
|
|
114
|
+
costPer1kOutput: 3e-3
|
|
94
115
|
}
|
|
95
116
|
],
|
|
96
117
|
thinking: [
|
|
97
118
|
{
|
|
98
|
-
id: "gemini-
|
|
99
|
-
name: "Gemini
|
|
119
|
+
id: "gemini-2.5-pro",
|
|
120
|
+
name: "Gemini 2.5 Pro",
|
|
100
121
|
active: true,
|
|
101
122
|
default: true,
|
|
102
123
|
costPer1kInput: 125e-5,
|
|
103
|
-
costPer1kOutput:
|
|
124
|
+
costPer1kOutput: 0.01
|
|
104
125
|
},
|
|
105
126
|
{
|
|
106
|
-
id: "gemini-
|
|
107
|
-
name: "Gemini
|
|
127
|
+
id: "gemini-3-pro-preview",
|
|
128
|
+
name: "Gemini 3 Pro",
|
|
108
129
|
active: true,
|
|
109
|
-
costPer1kInput:
|
|
110
|
-
costPer1kOutput: 0
|
|
130
|
+
costPer1kInput: 2e-3,
|
|
131
|
+
costPer1kOutput: 0.012
|
|
111
132
|
}
|
|
112
133
|
]
|
|
113
134
|
}
|
|
114
135
|
},
|
|
115
136
|
defaults: {
|
|
116
|
-
fast: "claude-
|
|
117
|
-
thinking: "claude-
|
|
118
|
-
primaryAdversarial: "claude-
|
|
119
|
-
secondaryAdversarial: "gpt-
|
|
137
|
+
fast: "claude-haiku-4-5",
|
|
138
|
+
thinking: "claude-sonnet-4-5-20250929",
|
|
139
|
+
primaryAdversarial: "claude-sonnet-4-5-20250929",
|
|
140
|
+
secondaryAdversarial: "gpt-5.2"
|
|
120
141
|
},
|
|
121
142
|
freeModels: [
|
|
122
|
-
"
|
|
123
|
-
"gpt-
|
|
124
|
-
"gemini-
|
|
143
|
+
"gpt-5-nano",
|
|
144
|
+
"gpt-4.1-nano",
|
|
145
|
+
"gemini-2.5-flash-lite"
|
|
125
146
|
]
|
|
126
147
|
};
|
|
127
148
|
|
|
@@ -605,7 +626,7 @@ async function setDefaultModelsMenu(profile, providers) {
|
|
|
605
626
|
console.log(chalk.bold("\nAvailable models:\n"));
|
|
606
627
|
availableModels.forEach((m, i) => {
|
|
607
628
|
const categoryLabel = m.category === "fast" ? chalk.cyan("[fast]") : chalk.magenta("[thinking]");
|
|
608
|
-
console.log(` ${chalk.cyan(String(i + 1))}) ${m.
|
|
629
|
+
console.log(` ${chalk.cyan(String(i + 1))}) ${m.modelName} ${categoryLabel}`);
|
|
609
630
|
});
|
|
610
631
|
console.log();
|
|
611
632
|
const modelChoice = await prompt("Select model number");
|