codekanban 0.30.0 → 0.32.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 +22 -0
- package/README.zh-CN.md +15 -0
- package/package.json +6 -6
- package/packages/codekanban-cli/README.md +118 -0
- package/packages/codekanban-cli/package.json +48 -0
- package/packages/codekanban-cli/release/install-cli-unix.sh +9 -0
- package/packages/codekanban-cli/release/install-skills-unix.sh +12 -0
- package/packages/codekanban-cli/release/install-unix.sh +16 -0
- package/packages/codekanban-cli/release/install-windows.cmd +19 -0
- package/packages/codekanban-cli/skills/README.md +18 -0
- package/packages/codekanban-cli/skills/codekanban-cli/agents/openai.yaml +4 -0
- package/packages/codekanban-cli/src/core.js +1019 -0
- package/packages/codekanban-cli/src/index.js +13 -0
- package/packages/{node-sdk/src/cli.js → codekanban-cli/src/runtime.js} +353 -6
- package/packages/node-sdk/README.md +57 -33
- package/packages/node-sdk/package.json +2 -7
- package/packages/node-sdk/src/client.js +810 -56
- package/packages/node-sdk/src/terminal-connection.js +2 -2
- package/packages/node-sdk/src/utils.js +25 -3
- package/packages/node-sdk/src/web-session-command-channel.js +2 -2
- package/packages/node-sdk/src/web-session-event-stream.js +1 -1
- package/packages/node-sdk/src/web-session-shared.js +44 -1
- package/skills/codekanban-project-session/agents/openai.yaml +0 -4
- package/skills/codekanban-project-session/scripts/run-codekanban-session.mjs +0 -7
package/README.md
CHANGED
|
@@ -51,6 +51,28 @@ codekanban
|
|
|
51
51
|
- **📝 Notes**
|
|
52
52
|
Multi-tab notes for quick recording of ideas and issues (Hotkey: `1`).
|
|
53
53
|
|
|
54
|
+
|
|
55
|
+
## Installable Codex Skill Bundle
|
|
56
|
+
|
|
57
|
+
This repository ships an installable Codex skill bundle built around a single public CLI: `codekanban-cli`.
|
|
58
|
+
Use it when you want the CodeKanban skill workflow on another machine without copying the full repository.
|
|
59
|
+
|
|
60
|
+
JavaScript package layout:
|
|
61
|
+
|
|
62
|
+
- `packages/node-sdk`: library-only SDK for JS integrations
|
|
63
|
+
- `packages/codekanban-cli`: the only public CLI and the owner of the packaged Codex skills
|
|
64
|
+
- `packages/codekanban-cli/skills/codekanban-cli`: the single shipped Codex skill source
|
|
65
|
+
|
|
66
|
+
Key defaults:
|
|
67
|
+
|
|
68
|
+
- Default service URL: `http://127.0.0.1:3007`
|
|
69
|
+
- First-time auth setup: `printf '%s' '<PASSWORD>' | codekanban-cli auth save-token --password-stdin`
|
|
70
|
+
- Non-default service URL: `codekanban-cli --base-url http://192.168.1.50:3007 session list --path /repo`
|
|
71
|
+
- Saved auth file: Windows `%APPDATA%\codekanban-cli\session.json`; macOS/Linux `$XDG_CONFIG_HOME/codekanban-cli/session.json` or `~/.config/codekanban-cli/session.json`
|
|
72
|
+
|
|
73
|
+
The offline bundle installs one CLI package and copies one Codex skill.
|
|
74
|
+
After installing the CLI and skills, restart Codex so the new skill is discovered.
|
|
75
|
+
|
|
54
76
|
## Development Guide
|
|
55
77
|
|
|
56
78
|
### Requirements
|
package/README.zh-CN.md
CHANGED
|
@@ -141,3 +141,18 @@ go build -ldflags="-s -w" -trimpath -o CodeKanban
|
|
|
141
141
|
- 代码清理: 如前端的src/api,应当全走自动生成
|
|
142
142
|
- 完成提醒功能,例如AI干完之后播放个声音,告诉你已经弄好了。
|
|
143
143
|
- 空闲终端列表 / 待交互终端列表。
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
## ???? Codex Skill Bundle
|
|
147
|
+
|
|
148
|
+
????????? `codekanban-cli` ???? Codex skill bundle????????????????????????????
|
|
149
|
+
|
|
150
|
+
??????
|
|
151
|
+
|
|
152
|
+
- ???????`http://127.0.0.1:3007`
|
|
153
|
+
- ????????`printf '%s' '<PASSWORD>' | codekanban-cli auth save-token --password-stdin`
|
|
154
|
+
- ??????`codekanban-cli --base-url http://192.168.1.50:3007 session list --path /repo`
|
|
155
|
+
- ????????Windows `%APPDATA%\codekanban-cli\session.json`?macOS/Linux `$XDG_CONFIG_HOME/codekanban-cli/session.json` ? `~/.config/codekanban-cli/session.json`
|
|
156
|
+
|
|
157
|
+
?????????????????????????????????? `codekanban-cli`?
|
|
158
|
+
??? CLI ? skills ?????? Codex ????????
|
package/package.json
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "codekanban",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.32.0",
|
|
4
4
|
"description": "An auxiliary programming tool for the AI era, helping you speed up 10x.",
|
|
5
5
|
"bin": {
|
|
6
6
|
"codekanban": "npm-bin/codekanban.js"
|
|
7
7
|
},
|
|
8
8
|
"optionalDependencies": {
|
|
9
|
-
"@codekanban/win32-x64": "0.
|
|
10
|
-
"@codekanban/darwin-x64": "0.
|
|
11
|
-
"@codekanban/darwin-arm64": "0.
|
|
12
|
-
"@codekanban/linux-x64": "0.
|
|
13
|
-
"@codekanban/linux-arm64": "0.
|
|
9
|
+
"@codekanban/win32-x64": "0.32.0",
|
|
10
|
+
"@codekanban/darwin-x64": "0.32.0",
|
|
11
|
+
"@codekanban/darwin-arm64": "0.32.0",
|
|
12
|
+
"@codekanban/linux-x64": "0.32.0",
|
|
13
|
+
"@codekanban/linux-arm64": "0.32.0"
|
|
14
14
|
},
|
|
15
15
|
"keywords": [
|
|
16
16
|
"ai",
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
# `@codekanban/cli`
|
|
2
|
+
|
|
3
|
+
Installable CLI for operating CodeKanban workflows, sessions, and web sessions without keeping this repository on the target machine.
|
|
4
|
+
|
|
5
|
+
`codekanban-cli` is the only public command surface. It builds on `@codekanban/sdk`, bundles that dependency for offline distribution, and ships its Codex skill sources from `skills/` inside this package.
|
|
6
|
+
|
|
7
|
+
## Default behavior
|
|
8
|
+
|
|
9
|
+
- Default server URL: `http://127.0.0.1:3007`
|
|
10
|
+
- Base URL resolution order:
|
|
11
|
+
1. `--base-url`
|
|
12
|
+
2. `CODEKANBAN_BASE_URL` or `BASE_URL`
|
|
13
|
+
3. Saved user session file
|
|
14
|
+
4. `http://127.0.0.1:3007`
|
|
15
|
+
- Token/password resolution order:
|
|
16
|
+
1. Explicit args such as `--token` or `--password`
|
|
17
|
+
2. `--token-file` / `--token-stdin` / `--password-file` / `--password-stdin`
|
|
18
|
+
3. `CODEKANBAN_TOKEN` / `TOKEN` / `CODEKANBAN_PASSWORD` / `PASSWORD`
|
|
19
|
+
4. Saved user session file for the matching base URL
|
|
20
|
+
- Saved session file:
|
|
21
|
+
- Windows: `%APPDATA%\codekanban-cli\session.json`
|
|
22
|
+
- macOS/Linux: `$XDG_CONFIG_HOME/codekanban-cli/session.json` or `~/.config/codekanban-cli/session.json`
|
|
23
|
+
|
|
24
|
+
## First-time setup
|
|
25
|
+
|
|
26
|
+
If your CodeKanban server does not use password protection, you can start running commands immediately:
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
codekanban-cli project list
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
If password protection is enabled, save a token once and reuse it later:
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
printf '%s' 'your-password' | codekanban-cli auth save-token --password-stdin
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
You can also save a token directly:
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
codekanban-cli auth save-token --token-file ./token.txt --base-url http://127.0.0.1:3007
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
`auth save-token` validates the credential against the live server before writing:
|
|
45
|
+
|
|
46
|
+
- `base_url`
|
|
47
|
+
- `access_token`
|
|
48
|
+
- `username`
|
|
49
|
+
- `saved_at`
|
|
50
|
+
|
|
51
|
+
## Project-aware commands
|
|
52
|
+
|
|
53
|
+
List projects known to the target CodeKanban server:
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
codekanban-cli project list
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Resolve a project by name:
|
|
60
|
+
|
|
61
|
+
```bash
|
|
62
|
+
codekanban-cli project resolve --project-name codekanban
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
If multiple candidates match, pick one directly without copying a project ID first:
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
codekanban-cli project resolve --project-name codekanban --project-index 2
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
Run a command directly against a project name:
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
codekanban-cli web-session create --project-name codekanban --agent codex --title "Planning session"
|
|
75
|
+
codekanban-cli session list --project-name codekanban
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
If the service is local and you omit `--project-id`, `--project-name`, and `--path`, project-scoped commands fall back to the current working directory.
|
|
79
|
+
If the service is remote, prefer `--project-id` or `--project-name`. In remote mode, `--path` means a server-side path on the machine running CodeKanban.
|
|
80
|
+
|
|
81
|
+
## Common commands
|
|
82
|
+
|
|
83
|
+
```bash
|
|
84
|
+
codekanban-cli --help
|
|
85
|
+
codekanban-cli auth status
|
|
86
|
+
codekanban-cli project list
|
|
87
|
+
codekanban-cli session list --project-name codekanban
|
|
88
|
+
codekanban-cli web-session state --project-name codekanban --session-id <session-id>
|
|
89
|
+
codekanban-cli web-session answer-pending --project-name codekanban --session-id <session-id>
|
|
90
|
+
codekanban-cli web-session execute-plan --project-name codekanban --session-id <session-id>
|
|
91
|
+
codekanban-cli web-session wait --project-name codekanban --session-id <session-id> --until done --settle-ms 2000
|
|
92
|
+
codekanban-cli file read --project-name codekanban --file notes/123.md
|
|
93
|
+
codekanban-cli web-session run --project-name codekanban --agent codex --text "Create a concise plan first, then implement it." --strict-cwd
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
If the service is not running on the default address, use either:
|
|
97
|
+
|
|
98
|
+
```bash
|
|
99
|
+
codekanban-cli --base-url http://192.168.1.50:3007 project list
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
or:
|
|
103
|
+
|
|
104
|
+
```bash
|
|
105
|
+
export CODEKANBAN_BASE_URL=http://192.168.1.50:3007
|
|
106
|
+
codekanban-cli project list
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
## Available Codex skill
|
|
110
|
+
|
|
111
|
+
- `codekanban-cli`: the shipped and discoverable Codex skill for operating CodeKanban through the installable CLI
|
|
112
|
+
|
|
113
|
+
## Codex skills in this repo
|
|
114
|
+
|
|
115
|
+
- Packaged skill source: `packages/codekanban-cli/skills/codekanban-cli`
|
|
116
|
+
- Skill directory index: `packages/codekanban-cli/skills/README.md`
|
|
117
|
+
- Release bundle builder: `packages/codekanban-cli/scripts/build-release-bundle.py`
|
|
118
|
+
- Offline bundle install docs: `packages/codekanban-cli/release/README-install.md`
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@codekanban/cli",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Installable Codex skill CLI for operating CodeKanban workflows, sessions, and web sessions.",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "./src/index.js",
|
|
7
|
+
"exports": {
|
|
8
|
+
".": "./src/index.js"
|
|
9
|
+
},
|
|
10
|
+
"bin": {
|
|
11
|
+
"codekanban-cli": "./bin/codekanban-cli.js"
|
|
12
|
+
},
|
|
13
|
+
"files": [
|
|
14
|
+
"bin",
|
|
15
|
+
"src",
|
|
16
|
+
"skills",
|
|
17
|
+
"README.md"
|
|
18
|
+
],
|
|
19
|
+
"dependencies": {
|
|
20
|
+
"@codekanban/sdk": "0.1.0"
|
|
21
|
+
},
|
|
22
|
+
"engines": {
|
|
23
|
+
"node": ">=20.19.0"
|
|
24
|
+
},
|
|
25
|
+
"keywords": [
|
|
26
|
+
"codekanban",
|
|
27
|
+
"codex",
|
|
28
|
+
"skill",
|
|
29
|
+
"cli",
|
|
30
|
+
"web-session",
|
|
31
|
+
"workflow"
|
|
32
|
+
],
|
|
33
|
+
"author": "fy0",
|
|
34
|
+
"license": "Apache-2.0",
|
|
35
|
+
"repository": {
|
|
36
|
+
"type": "git",
|
|
37
|
+
"url": "https://github.com/fy0/CodeKanban"
|
|
38
|
+
},
|
|
39
|
+
"homepage": "https://github.com/fy0/CodeKanban#readme",
|
|
40
|
+
"scripts": {
|
|
41
|
+
"test": "node --test test/*.test.js",
|
|
42
|
+
"pack:dry-run": "python scripts/pack_bundled_cli.py --dry-run",
|
|
43
|
+
"bundle:release": "python scripts/build-release-bundle.py"
|
|
44
|
+
},
|
|
45
|
+
"bundleDependencies": [
|
|
46
|
+
"@codekanban/sdk"
|
|
47
|
+
]
|
|
48
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
#!/usr/bin/env sh
|
|
2
|
+
set -eu
|
|
3
|
+
|
|
4
|
+
SCRIPT_DIR=$(CDPATH= cd -- "$(dirname -- "$0")" && pwd)
|
|
5
|
+
|
|
6
|
+
npm install -g --no-fund --no-audit \
|
|
7
|
+
"$SCRIPT_DIR/npm/codekanban-cli-__CLI_VERSION__.tgz"
|
|
8
|
+
|
|
9
|
+
echo "CLI install complete. Run ./install-skills-unix.sh as the real Codex user next."
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
#!/usr/bin/env sh
|
|
2
|
+
set -eu
|
|
3
|
+
|
|
4
|
+
SCRIPT_DIR=$(CDPATH= cd -- "$(dirname -- "$0")" && pwd)
|
|
5
|
+
CODEX_HOME_DIR=${CODEX_HOME:-$HOME/.codex}
|
|
6
|
+
SKILLS_DIR="$CODEX_HOME_DIR/skills"
|
|
7
|
+
|
|
8
|
+
mkdir -p "$SKILLS_DIR"
|
|
9
|
+
cp -R "$SCRIPT_DIR/skills/." "$SKILLS_DIR/"
|
|
10
|
+
|
|
11
|
+
echo "Skills installed into $SKILLS_DIR"
|
|
12
|
+
echo "Restart Codex to discover the new skills."
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
#!/usr/bin/env sh
|
|
2
|
+
set -eu
|
|
3
|
+
|
|
4
|
+
cat <<'EOF'
|
|
5
|
+
Use the Unix install in two separate steps:
|
|
6
|
+
|
|
7
|
+
1. ./install-cli-unix.sh
|
|
8
|
+
2. ./install-skills-unix.sh
|
|
9
|
+
|
|
10
|
+
Why split it?
|
|
11
|
+
- Global npm installation can require sudo or a privileged prefix.
|
|
12
|
+
- Skills must land in the real Codex user's ~/.codex/skills directory.
|
|
13
|
+
- Running a combined sudo installer could put skills under root's ~/.codex/skills, which is the wrong account.
|
|
14
|
+
|
|
15
|
+
After both steps finish, restart Codex.
|
|
16
|
+
EOF
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
@echo off
|
|
2
|
+
setlocal enabledelayedexpansion
|
|
3
|
+
set SCRIPT_DIR=%~dp0
|
|
4
|
+
set BUNDLE_DIR=%SCRIPT_DIR%
|
|
5
|
+
set CODEX_HOME_DIR=%CODEX_HOME%
|
|
6
|
+
if "%CODEX_HOME_DIR%"=="" set CODEX_HOME_DIR=%USERPROFILE%\.codex
|
|
7
|
+
set SKILLS_DIR=%CODEX_HOME_DIR%\skills
|
|
8
|
+
|
|
9
|
+
echo Installing codekanban-cli from the offline bundle...
|
|
10
|
+
call npm install -g --no-fund --no-audit "%BUNDLE_DIR%npm\codekanban-cli-__CLI_VERSION__.tgz"
|
|
11
|
+
if errorlevel 1 exit /b 1
|
|
12
|
+
|
|
13
|
+
echo Installing Codex skills into %SKILLS_DIR% ...
|
|
14
|
+
if not exist "%SKILLS_DIR%" mkdir "%SKILLS_DIR%"
|
|
15
|
+
xcopy /E /I /Y "%BUNDLE_DIR%skills\*" "%SKILLS_DIR%\" >nul
|
|
16
|
+
if errorlevel 1 exit /b 1
|
|
17
|
+
|
|
18
|
+
echo.
|
|
19
|
+
echo Installation complete. Restart Codex to discover the new skills.
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# CodeKanban Codex skills
|
|
2
|
+
|
|
3
|
+
This directory is the single source of truth for the Codex skills shipped with `@codekanban/cli`.
|
|
4
|
+
|
|
5
|
+
Available skills in this package:
|
|
6
|
+
|
|
7
|
+
- `codekanban-cli`: the primary discoverable skill for operating CodeKanban through the installable `codekanban-cli` command
|
|
8
|
+
|
|
9
|
+
Key entrypoints:
|
|
10
|
+
|
|
11
|
+
- Skill source: `packages/codekanban-cli/skills/codekanban-cli/SKILL.md`
|
|
12
|
+
- Agent metadata: `packages/codekanban-cli/skills/codekanban-cli/agents/openai.yaml`
|
|
13
|
+
|
|
14
|
+
Before using the skill:
|
|
15
|
+
|
|
16
|
+
1. Install `codekanban-cli`
|
|
17
|
+
2. Copy the `skills/` directory contents into the target user's Codex skills directory
|
|
18
|
+
3. Restart Codex so the new skill is discovered
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
schema_version: 1
|
|
2
|
+
display_name: CodeKanban CLI
|
|
3
|
+
short_description: Primary CodeKanban skill for project, web-session, workflow, session, and terminal control through the installable codekanban-cli command.
|
|
4
|
+
default_prompt: Use codekanban-cli for CodeKanban project, web-session, workflow, session, and terminal control. If the user refers to a project by name, resolve it first with project list or project resolve, prefer web-session for structured work, use web-session run for the full answer-and-execute loop, and treat remote --path values as server-side paths.
|