@straiffi/archon 1.0.5 → 1.0.7

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.
Files changed (2) hide show
  1. package/README.md +23 -98
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Archon
2
2
 
3
- A ticket-driven interface for AI-assisted code automation. Create tickets, plan features, then let an AI agent (Claude or OpenCode) implement them in isolated git worktrees.
3
+ Archon is a ticket-driven interface for AI-assisted code automation. Create tickets, plan features, then let an AI agent such as Claude or OpenCode implement them in isolated git worktrees.
4
4
 
5
5
  ## Install
6
6
 
@@ -42,7 +42,7 @@ archon update
42
42
 
43
43
  V1 targets macOS and Linux first.
44
44
 
45
- ## External tool prerequisites
45
+ ## External Tool Prerequisites
46
46
 
47
47
  Archon does not bundle external developer tools.
48
48
 
@@ -51,49 +51,25 @@ Required or commonly expected tools:
51
51
  | Tool | Why it matters |
52
52
  | --- | --- |
53
53
  | `git` | Required for project repositories, worktrees, diffing, and commit operations |
54
- | `opencode` | Required for OpenCode plan/build/chat/review workflows |
55
- | `claude` | Required for Claude-backed workflows |
56
- | `gh` | Required for GitHub PR and review integration |
54
+ | `opencode` | Needed for OpenCode-backed plan, build, chat, and review workflows |
55
+ | `claude` | Needed for Claude-backed workflows |
56
+ | `gh` | Optional for GitHub PR and review workflows; GitHub API key integration also works without it |
57
57
 
58
- If one of the optional AI tools is missing, Archon should still start, but features that depend on that binary will return actionable errors.
58
+ Archon should still start if an optional tool is missing, but features that depend on that binary or integration path will return actionable errors.
59
59
 
60
- ## How it works
60
+ ## How It Works
61
61
 
62
- Tickets move through three states:
62
+ Archon has three main workspaces:
63
63
 
64
- 1. **Plan** write a title and description for the feature or task
65
- 2. **Build** the server spawns your configured AI tool in a new git worktree on a dedicated branch; real-time logs stream back to the UI
66
- 3. **Review** an agent conducts a code review and fixes any issues found
64
+ 1. **Board**: create tickets, move them through planning and implementation, and run builds in isolated git worktrees on dedicated branches.
65
+ 2. **Chat**: use persistent project chat sessions for planning, implementation help, and follow-up questions. Chat supports both planning-oriented and build-oriented turns so you can scope work first, then continue in the same conversation.
66
+ 3. **Memory**: optionally save project conventions, accepted decisions, and other prompt context in Archon so future ticket, chat, build, and review runs stay aligned with how your project works.
67
67
 
68
- The frontend is a React kanban board. The backend is an Express server with a SQLite database and Socket.io for live status updates.
68
+ Within the board workflow, tickets move through three stages:
69
69
 
70
- ## Development
71
-
72
- For normal source development, use the repo checkout workflow instead of the packaged CLI.
73
-
74
- Install dependencies from the repository root:
75
-
76
- ```bash
77
- npm install
78
- ```
79
-
80
- Start dev mode:
81
-
82
- ```bash
83
- npm run start:dev
84
- ```
85
-
86
- `npm run start:dev` is the primary local development command. It keeps the Express server and Vite frontend as separate processes and configures the dev database plus API base URL overrides for you.
87
-
88
- Other useful commands:
89
-
90
- ```bash
91
- npm run build
92
- npm test
93
- npm run smoke:package
94
- ```
95
-
96
- `npm run smoke:package` builds the package, installs the packed tarball into a temporary npm prefix, runs `archon --version`, starts `archon --no-open`, fetches the app shell and an API route, then shuts it down.
70
+ 1. **Plan**: write a title and description for the feature or task
71
+ 2. **Build**: Archon runs your configured AI tool in a new git worktree and streams progress back to the UI in real time
72
+ 3. **Review**: an agent reviews the resulting changes and suggests fixes that you can inspect and accept manually
97
73
 
98
74
  ## Project Setup
99
75
 
@@ -101,13 +77,13 @@ After Archon starts, create a project from the UI:
101
77
 
102
78
  1. Click `Create project`
103
79
  2. Enter a project name and repository path
104
- 3. Optionally click `Auto-config` to inspect top-level repo files and fill any empty setup, service, or worktree sync settings
80
+ 3. Optionally click `Auto-config` to fill any empty setup, service, or worktree sync settings
105
81
  4. Optionally open `Advanced settings` to review or edit setup, service, worktree sync, and IDE settings
106
82
  5. Save the project, select it in the project switcher, and create tickets inside that project
107
83
 
108
- ## Project configuration
84
+ ## Project Configuration
109
85
 
110
- Archon stores repository and run settings per project in its database. Use the project form in the UI to configure each project.
86
+ Use the project form in the UI to configure how Archon prepares worktrees and runs project-specific services.
111
87
 
112
88
  ### Required fields
113
89
 
@@ -116,7 +92,7 @@ Archon stores repository and run settings per project in its database. Use the p
116
92
  | `Project name` | The label shown in the project switcher, such as `Platform API` or `Marketing Site` |
117
93
  | `Repository path` | Any path inside the target git repository; Archon resolves it to the repo root before saving |
118
94
 
119
- `Auto-config` is available in both the create and edit project modals. It uses the currently selected global tool, reads only top-level README/config files, and fills only empty `Setup commands`, `Services`, and `Worktree sync` sections. It never changes `IDE command`.
95
+ `Auto-config` is available in both the create and edit project modals. It fills only empty `Setup commands`, `Services`, and `Worktree sync` sections, and it never changes `IDE command`.
120
96
 
121
97
  ### Advanced fields
122
98
 
@@ -128,10 +104,6 @@ Archon stores repository and run settings per project in its database. Use the p
128
104
  | `cwd` | Optional working directory for a service, relative to the worktree root. For example, use `client` for a frontend dev server or `server` for an API process. Leave it blank to run from the worktree root. |
129
105
  | `IDE command` | Optional command to open the finished worktree in your editor after services start, such as `code --reuse-window` or `idea`. |
130
106
 
131
- Worktree sync entries are stored as `{ source, target?, mode }` objects. `source` is required, `target` is optional and defaults to the same path, and `mode` is either `copy` or `symlink`.
132
-
133
- Service entries are stored as `{ cmd, cwd }` objects. `cmd` is required, while `cwd` is optional.
134
-
135
107
  ### Example project setup
136
108
 
137
109
  ```text
@@ -158,7 +130,7 @@ IDE command: code --reuse-window
158
130
 
159
131
  Each ticket gets its own worktree and branch derived from the ticket title, using the active project's repository settings. Archon reuses an existing local branch when one already exists; otherwise it creates a new branch for the worktree.
160
132
 
161
- ## Data And Migration
133
+ ## Data Storage
162
134
 
163
135
  Archon keeps runtime state out of the installed package tree.
164
136
 
@@ -171,54 +143,7 @@ Default database locations:
171
143
 
172
144
  You can override the database location with `DB_PATH`.
173
145
 
174
- ### Migrating from an existing dev database
175
-
176
- Older local development runs may already have data in one of these files:
146
+ ## Development And Maintenance
177
147
 
178
- - `server/archon-dev.db`
179
- - `server/archon.db`
180
-
181
- Recommended manual migration flow:
182
-
183
- 1. Stop all Archon dev and production processes.
184
- 2. Back up the source database and any current production database.
185
- 3. Create the production app-data directory if it does not exist.
186
- 4. Copy the chosen development database to the production database path.
187
- 5. If SQLite sidecar files such as `-wal` or `-shm` exist, only copy them while Archon is fully stopped.
188
- 6. Start Archon normally and let its startup schema checks apply any missing migrations.
189
-
190
- If you want to run production Archon against an existing database temporarily, launch it with:
191
-
192
- ```bash
193
- DB_PATH=/path/to/archon-dev.db archon
194
- ```
195
-
196
- ## Release Process
197
-
198
- Archon uses a manual GitHub Actions release workflow.
199
-
200
- ### GitHub setup
201
-
202
- 1. Publish the npm package scope or package name from the npm account or organization that owns `@straiffi/archon`.
203
- 2. Add an `NPM_TOKEN` repository secret in GitHub with publish access to that package.
204
- 3. Run the `Release` workflow from the `main` branch.
205
- 4. Choose one of `patch`, `minor`, or `major` for `release_type`.
206
-
207
- The workflow will:
208
-
209
- 1. install dependencies
210
- 2. run type checks, lint, tests, build, tarball validation, and packaged-install smoke checks
211
- 3. run `npm version <release_type>`
212
- 4. publish with `npm publish --access public`
213
- 5. push the version commit and git tag back to GitHub
214
-
215
- ### Local release dry run
216
-
217
- Before running the workflow, you can validate the release path locally with:
218
-
219
- ```bash
220
- npm install
221
- npm run build
222
- npm run smoke:package
223
- npm pack --dry-run
224
- ```
148
+ - Contributor workflow: [`DEVELOPMENT.md`](https://github.com/Straiffi/Archon/blob/main/DEVELOPMENT.md)
149
+ - Release workflow: [`RELEASING.md`](https://github.com/Straiffi/Archon/blob/main/RELEASING.md)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@straiffi/archon",
3
- "version": "1.0.5",
3
+ "version": "1.0.7",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "workspaces": [