@abe-ing/cli 0.3.1 → 0.4.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 +17 -2
- package/dist/api.js +24 -1
- package/dist/api.js.map +1 -1
- package/dist/commands/worksheets.js +17 -0
- package/dist/commands/worksheets.js.map +1 -0
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/output.js +40 -7
- package/dist/output.js.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# @abe-ing/cli — the `abe` command
|
|
2
2
|
|
|
3
|
-
Drive [ABE](https://abe.ing) project boards and tasks from the command line. Built for humans **and** agents — run engineering issues inside ABE instead of GitHub, and let Claude Code (or any shell-driven agent) create boards, file issues, and move cards via `abe ... --json`.
|
|
3
|
+
Drive [ABE](https://abe.ing) project boards and tasks from the command line, and read the worksheets (docs) behind them. Built for humans **and** agents — run engineering issues inside ABE instead of GitHub, and let Claude Code (or any shell-driven agent) create boards, file issues, and move cards via `abe ... --json`.
|
|
4
4
|
|
|
5
5
|
It is a thin, dependency-light wrapper over the [ABE REST API](../../docs/agent-api/rest-api.md), authenticated with a Personal Access Token.
|
|
6
6
|
|
|
@@ -75,9 +75,11 @@ abe task complete 91
|
|
|
75
75
|
abe task list --board engineering # your OPEN tasks on that board
|
|
76
76
|
abe task list --board engineering --all --include-done # full set (admin/full token)
|
|
77
77
|
abe task board --board engineering # full board state incl. done — best for reconciliation
|
|
78
|
-
abe task show 91
|
|
78
|
+
abe task show 91 # header + the task BODY (its worksheet doc, rendered as markdown)
|
|
79
79
|
```
|
|
80
80
|
|
|
81
|
+
`task show` prints the task's `ref` (`ABE-91`, the form to cite in PRs), its `worksheet` id, and the task's body — the linked worksheet doc rendered to markdown — under the header block. `--json` carries the body as `task.body_markdown` (plus `task.description`, the create-time text, and `task.worksheet_id`). Prefer `body_markdown`: `description` stops tracking the doc once it has been edited in the editor. The CLI requests the body with `?render=markdown`; it is `null` when the doc is hidden from your token (e.g. a token without the `tasks` scope, or a private doc you can't see).
|
|
82
|
+
|
|
81
83
|
Invalid `--priority/--type/--size/--status` fail fast (exit 2) before any network call. `--column` is **not** client-validated (columns are per-board) — an invalid column returns the server's `422` listing the valid set.
|
|
82
84
|
|
|
83
85
|
### Comments, history & delete
|
|
@@ -97,6 +99,19 @@ abe task delete 91 --yes # PERMANENT — refuses without --yes
|
|
|
97
99
|
|
|
98
100
|
`task delete` is irreversible; prefer `task complete` for finished work. It refuses without `--yes` so an agent can't destroy a task by accident.
|
|
99
101
|
|
|
102
|
+
## Worksheets
|
|
103
|
+
|
|
104
|
+
Worksheets are ABE's docs. Every task's body is a worksheet (`task.worksheet_id`); pages, specs, and plans are worksheets too. Read one directly — by a task's `worksheet_id`, or any other doc id:
|
|
105
|
+
|
|
106
|
+
```bash
|
|
107
|
+
abe worksheet show 6325 # "# <title>" then the body as markdown
|
|
108
|
+
abe --json worksheet show 6325 | jq -r '.worksheet.bodyMarkdown'
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
The **server** renders the markdown (`GET /worksheets/:id?render=markdown`), so the CLI never carries its own Tiptap converter. Task docs need a token with the `tasks` scope (or `full`) — exit 6 otherwise. Private docs are readable only by their creator, people they're shared with, and workspace admins, exactly as in the web app (exit 7 when not visible). Read-only: edit docs in ABE.
|
|
112
|
+
|
|
113
|
+
`--json` emits a stable subset of the server's worksheet payload — `id`, `title`, `body` (Tiptap JSON), `bodyMarkdown`, `visibility`, `lastEditedAt`, `createdByName` — never the share token, owner email, or share/mention rosters the web editor receives.
|
|
114
|
+
|
|
100
115
|
## Members
|
|
101
116
|
|
|
102
117
|
```bash
|
package/dist/api.js
CHANGED
|
@@ -1,4 +1,17 @@
|
|
|
1
1
|
import { CliError, EXIT } from './errors.js';
|
|
2
|
+
// The worksheet fields the CLI exposes. The server's payload is the web
|
|
3
|
+
// editor's — it also carries shareToken (a public-share secret),
|
|
4
|
+
// createdByEmail, and the share/mention/customer rosters — none of which
|
|
5
|
+
// belongs on an agent's stdout or in its transcript. Project to this stable,
|
|
6
|
+
// documented subset (README → Worksheets).
|
|
7
|
+
export const WORKSHEET_FIELDS = ['id', 'title', 'body', 'bodyMarkdown', 'visibility', 'lastEditedAt', 'createdByName'];
|
|
8
|
+
export function pickWorksheet(raw) {
|
|
9
|
+
const out = {};
|
|
10
|
+
for (const k of WORKSHEET_FIELDS)
|
|
11
|
+
if (k in raw)
|
|
12
|
+
out[k] = raw[k];
|
|
13
|
+
return out;
|
|
14
|
+
}
|
|
2
15
|
export class ApiClient {
|
|
3
16
|
baseUrl;
|
|
4
17
|
token;
|
|
@@ -48,8 +61,18 @@ export class ApiClient {
|
|
|
48
61
|
boardState(boardId) {
|
|
49
62
|
return this.request('GET', `/tasks/board?board_id=${boardId}`);
|
|
50
63
|
}
|
|
64
|
+
// Opts in to the rendered body (`body_markdown`); the web app calls the
|
|
65
|
+
// same route without it and gets the lean projection.
|
|
51
66
|
getTask(id) {
|
|
52
|
-
return this.request('GET', `/tasks/${id}`);
|
|
67
|
+
return this.request('GET', `/tasks/${id}?render=markdown`);
|
|
68
|
+
}
|
|
69
|
+
// A worksheet (a task's doc, or any other doc) with its body rendered to
|
|
70
|
+
// markdown server-side — ONE Tiptap→markdown converter, and it lives on
|
|
71
|
+
// the server. Same visibility + PAT-scope rules as the web app. Projected
|
|
72
|
+
// to WORKSHEET_FIELDS before it reaches any output path.
|
|
73
|
+
async getWorksheet(id) {
|
|
74
|
+
const { worksheet } = await this.request('GET', `/worksheets/${id}?render=markdown`);
|
|
75
|
+
return { worksheet: pickWorksheet(worksheet ?? {}) };
|
|
53
76
|
}
|
|
54
77
|
createTask(body) {
|
|
55
78
|
return this.request('POST', '/tasks', body);
|
package/dist/api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { buildContext } from '../context.js';
|
|
2
|
+
import { printWorksheet } from '../output.js';
|
|
3
|
+
// Worksheets are ABE's docs. Every task's body lives in its linked worksheet
|
|
4
|
+
// (`abe task show` prints it inline); other pages/specs/plans are worksheets
|
|
5
|
+
// too. Read-only here — the doc editor owns writes.
|
|
6
|
+
export function registerWorksheetCommands(program) {
|
|
7
|
+
const worksheet = program.command('worksheet').description('Read worksheets (the docs behind tasks and other pages)');
|
|
8
|
+
worksheet
|
|
9
|
+
.command('show <id>')
|
|
10
|
+
.description('Show a worksheet with its body rendered as markdown')
|
|
11
|
+
.action(async (id, _o, cmd) => {
|
|
12
|
+
const { client, json } = buildContext(cmd.optsWithGlobals());
|
|
13
|
+
const { worksheet: found } = await client.getWorksheet(Number(id));
|
|
14
|
+
printWorksheet(found, { json });
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=worksheets.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"worksheets.js","sourceRoot":"","sources":["../../src/commands/worksheets.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAc,MAAM,eAAe,CAAA;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAE7C,6EAA6E;AAC7E,6EAA6E;AAC7E,oDAAoD;AACpD,MAAM,UAAU,yBAAyB,CAAC,OAAgB;IACxD,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,yDAAyD,CAAC,CAAA;IAErH,SAAS;SACN,OAAO,CAAC,WAAW,CAAC;SACpB,WAAW,CAAC,qDAAqD,CAAC;SAClE,MAAM,CAAC,KAAK,EAAE,EAAU,EAAE,EAAW,EAAE,GAAY,EAAE,EAAE;QACtD,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,YAAY,CAAC,GAAG,CAAC,eAAe,EAAgB,CAAC,CAAA;QAC1E,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAA;QAClE,cAAc,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;IACjC,CAAC,CAAC,CAAA;AACN,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -5,6 +5,7 @@ import { registerAuthCommands } from './commands/auth.js';
|
|
|
5
5
|
import { registerBoardCommands } from './commands/boards.js';
|
|
6
6
|
import { registerTaskCommands } from './commands/tasks.js';
|
|
7
7
|
import { registerMembersCommands } from './commands/members.js';
|
|
8
|
+
import { registerWorksheetCommands } from './commands/worksheets.js';
|
|
8
9
|
// Read the version from package.json so `abe --version` never drifts from the
|
|
9
10
|
// published package (package.json ships alongside dist/ in the npm tarball).
|
|
10
11
|
function packageVersion() {
|
|
@@ -19,7 +20,7 @@ function packageVersion() {
|
|
|
19
20
|
export function buildProgram() {
|
|
20
21
|
const program = new Command('abe');
|
|
21
22
|
program
|
|
22
|
-
.description('Drive ABE project boards and
|
|
23
|
+
.description('Drive ABE project boards, tasks, and worksheets from the command line.')
|
|
23
24
|
.version(packageVersion())
|
|
24
25
|
.option('--json', 'machine-readable JSON output on stdout (status text goes to stderr)')
|
|
25
26
|
.option('--api-url <url>', 'ABE API base URL (env: ABE_API_URL)')
|
|
@@ -31,6 +32,7 @@ export function buildProgram() {
|
|
|
31
32
|
registerAuthCommands(program);
|
|
32
33
|
registerBoardCommands(program);
|
|
33
34
|
registerTaskCommands(program);
|
|
35
|
+
registerWorksheetCommands(program);
|
|
34
36
|
registerMembersCommands(program);
|
|
35
37
|
return program;
|
|
36
38
|
}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAEtC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/output.js
CHANGED
|
@@ -55,16 +55,49 @@ export function printTasks(tasks, opts) {
|
|
|
55
55
|
export function printTask(task, opts) {
|
|
56
56
|
if (opts.json)
|
|
57
57
|
return emit({ task }, opts);
|
|
58
|
+
// Labels padded to one width so values line up in a column (awk-able).
|
|
58
59
|
const lines = [
|
|
59
60
|
`#${task.id} ${task.title}`,
|
|
60
|
-
`
|
|
61
|
-
`
|
|
62
|
-
`
|
|
63
|
-
`
|
|
64
|
-
`
|
|
65
|
-
`
|
|
66
|
-
`
|
|
61
|
+
...(task.ref ? [`ref: ${task.ref}`] : []),
|
|
62
|
+
`status: ${task.status}`,
|
|
63
|
+
`priority: ${task.priority}`,
|
|
64
|
+
`type: ${task.task_type}`,
|
|
65
|
+
`column: ${task.board_column}`,
|
|
66
|
+
`board: ${task.task_board_id ?? '(none)'}`,
|
|
67
|
+
`assignee: ${task.assignee_name ?? '(unassigned)'}`,
|
|
68
|
+
`labels: ${(task.labels ?? []).join(', ') || '(none)'}`,
|
|
69
|
+
`worksheet: ${task.worksheet_id ?? '(none)'}`,
|
|
67
70
|
];
|
|
71
|
+
// The body: the rendered worksheet doc when the server sent a non-empty
|
|
72
|
+
// one (a doc can legitimately render to nothing), else the create-time
|
|
73
|
+
// description. Truthiness, not `??`, so an empty render still falls back.
|
|
74
|
+
// After a blank line so the header block above stays greppable on its own.
|
|
75
|
+
const rendered = (task.body_markdown ?? '').trim();
|
|
76
|
+
const body = rendered || (task.description ?? '').trim();
|
|
77
|
+
if (body)
|
|
78
|
+
lines.push('', body);
|
|
68
79
|
process.stdout.write(`${lines.join('\n')}\n`);
|
|
69
80
|
}
|
|
81
|
+
export function printWorksheet(ws, opts) {
|
|
82
|
+
if (opts.json)
|
|
83
|
+
return emit({ worksheet: ws }, opts);
|
|
84
|
+
process.stdout.write(`# ${ws.title}\n`);
|
|
85
|
+
const body = (ws.bodyMarkdown ?? '').trim();
|
|
86
|
+
if (body) {
|
|
87
|
+
process.stdout.write(`\n${body}\n`);
|
|
88
|
+
}
|
|
89
|
+
else if (!('bodyMarkdown' in ws)) {
|
|
90
|
+
// Key ABSENT: an older server that ignores ?render=markdown. Never dump
|
|
91
|
+
// the Tiptap JSON `body` at a human instead.
|
|
92
|
+
status('(no rendered body — upgrade ABE for ?render=markdown support)');
|
|
93
|
+
}
|
|
94
|
+
else if (ws.bodyMarkdown === null) {
|
|
95
|
+
// Key present but null: the server saw the request and could not render
|
|
96
|
+
// this doc (malformed content). Not a client/version problem.
|
|
97
|
+
status('(the server could not render this doc — open it in ABE)');
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
status('(empty)');
|
|
101
|
+
}
|
|
102
|
+
}
|
|
70
103
|
//# sourceMappingURL=output.js.map
|
package/dist/output.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output.js","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"output.js","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@abe-ing/cli",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "Command-line interface for driving ABE project boards and tasks.",
|
|
3
|
+
"version": "0.4.0",
|
|
4
|
+
"description": "Command-line interface for driving ABE project boards and tasks, and reading the worksheets behind them.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
7
7
|
"abe": "./dist/cli.js"
|