@atollhq/skill-codex 0.1.8 → 0.1.10
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 +14 -1
- package/bin/install.mjs +6 -3
- package/package.json +1 -1
- package/skill/SKILL.md +50 -6
- package/skill/references/api-endpoints.md +16 -0
package/README.md
CHANGED
|
@@ -8,6 +8,8 @@ Gives your Codex agent the ability to manage tasks, goals, KPIs, initiatives, mi
|
|
|
8
8
|
|
|
9
9
|
```bash
|
|
10
10
|
npx @atollhq/skill-codex --key sk_atoll_... --org your-org-id
|
|
11
|
+
# or
|
|
12
|
+
ATOLL_API_KEY=sk_atoll_... ATOLL_ORG_ID=your-org-id npx @atollhq/skill-codex
|
|
11
13
|
```
|
|
12
14
|
|
|
13
15
|
Get an API key from **Settings > Members > Add Agent** (or **Create API Key** for integrations) in the Atoll app.
|
|
@@ -29,6 +31,7 @@ Once installed, ask Codex anything task-related:
|
|
|
29
31
|
"List my Atoll tasks"
|
|
30
32
|
"Create an issue to fix the login bug, priority 1"
|
|
31
33
|
"What goals are off pace?"
|
|
34
|
+
"Check my Atoll heartbeat"
|
|
32
35
|
"Move ATOLL-42 to in_progress"
|
|
33
36
|
```
|
|
34
37
|
|
|
@@ -40,7 +43,9 @@ For terminal-first work, see [`@atollhq/cli`](https://www.npmjs.com/package/@ato
|
|
|
40
43
|
npm install -g @atollhq/cli
|
|
41
44
|
atoll auth login --key sk_atoll_...
|
|
42
45
|
atoll config set-org your-org-slug
|
|
43
|
-
atoll
|
|
46
|
+
atoll heartbeat
|
|
47
|
+
atoll issue list --json
|
|
48
|
+
atoll agent-context
|
|
44
49
|
```
|
|
45
50
|
|
|
46
51
|
For multiple agents or orgs, use CLI auth profiles:
|
|
@@ -51,6 +56,14 @@ atoll auth login --profile agent-b --key sk_atoll_... --org client
|
|
|
51
56
|
atoll --profile agent-b issue list
|
|
52
57
|
```
|
|
53
58
|
|
|
59
|
+
The companion CLI also supports safer issue removal and local/upstream feedback:
|
|
60
|
+
|
|
61
|
+
```bash
|
|
62
|
+
atoll issue archive ATOLL-42
|
|
63
|
+
atoll issue delete ATOLL-42 --dry-run
|
|
64
|
+
atoll feedback "The heartbeat output should include blocked issue details"
|
|
65
|
+
```
|
|
66
|
+
|
|
54
67
|
## License
|
|
55
68
|
|
|
56
69
|
MIT
|
package/bin/install.mjs
CHANGED
|
@@ -20,10 +20,11 @@ function parseArgs(argv) {
|
|
|
20
20
|
function printUsage() {
|
|
21
21
|
console.log(`
|
|
22
22
|
Usage: npx @atollhq/skill-codex --key <api-key> --org <org-id>
|
|
23
|
+
or: ATOLL_API_KEY=<api-key> ATOLL_ORG_ID=<org-id> npx @atollhq/skill-codex
|
|
23
24
|
|
|
24
25
|
Options:
|
|
25
|
-
--key Atoll API key (sk_atoll_...)
|
|
26
|
-
--org Organization ID
|
|
26
|
+
--key Atoll API key (sk_atoll_...). Defaults to ATOLL_API_KEY.
|
|
27
|
+
--org Organization ID. Defaults to ATOLL_ORG_ID.
|
|
27
28
|
--help Show this help message
|
|
28
29
|
|
|
29
30
|
Installs the Atoll integration for Codex CLI:
|
|
@@ -34,11 +35,13 @@ Installs the Atoll integration for Codex CLI:
|
|
|
34
35
|
}
|
|
35
36
|
|
|
36
37
|
const args = parseArgs(process.argv)
|
|
38
|
+
args.key ??= process.env.ATOLL_API_KEY
|
|
39
|
+
args.org ??= process.env.ATOLL_ORG_ID
|
|
37
40
|
|
|
38
41
|
if (args.help) { printUsage(); process.exit(0) }
|
|
39
42
|
|
|
40
43
|
if (!args.key || !args.org) {
|
|
41
|
-
console.error('Error: --key and --org
|
|
44
|
+
console.error('Error: provide --key and --org, or set ATOLL_API_KEY and ATOLL_ORG_ID\n')
|
|
42
45
|
printUsage()
|
|
43
46
|
process.exit(1)
|
|
44
47
|
}
|
package/package.json
CHANGED
package/skill/SKILL.md
CHANGED
|
@@ -75,12 +75,20 @@ atoll --profile agent-b issue list
|
|
|
75
75
|
Common commands:
|
|
76
76
|
|
|
77
77
|
```bash
|
|
78
|
+
# Agent orientation
|
|
79
|
+
atoll heartbeat
|
|
80
|
+
atoll heartbeat --signals-only
|
|
81
|
+
atoll heartbeat --severity critical
|
|
82
|
+
atoll heartbeat --json
|
|
83
|
+
atoll agent-context
|
|
84
|
+
|
|
78
85
|
# List tasks
|
|
79
|
-
atoll issue list
|
|
80
|
-
atoll issue list --status todo --priority 1
|
|
86
|
+
atoll issue list --json
|
|
87
|
+
atoll issue list --status todo --priority 1 --limit 25
|
|
81
88
|
|
|
82
89
|
# View a task
|
|
83
|
-
atoll issue
|
|
90
|
+
atoll issue get ATOLL-42
|
|
91
|
+
atoll issue view ATOLL-42 # alias kept for humans
|
|
84
92
|
|
|
85
93
|
# Create a task
|
|
86
94
|
atoll issue create --title "Fix login bug" --status todo --priority 1
|
|
@@ -95,11 +103,29 @@ atoll issue assign ATOLL-42 --to self
|
|
|
95
103
|
# Comments
|
|
96
104
|
atoll comment add ATOLL-42 --body "Working on this now"
|
|
97
105
|
|
|
106
|
+
# Safe removal
|
|
107
|
+
atoll issue archive ATOLL-42
|
|
108
|
+
atoll issue unarchive ATOLL-42
|
|
109
|
+
atoll issue delete ATOLL-42 --dry-run
|
|
110
|
+
atoll issue delete ATOLL-42 --force
|
|
111
|
+
|
|
112
|
+
# Report friction to Atoll maintainers
|
|
113
|
+
atoll feedback "The status error should list custom board statuses"
|
|
114
|
+
|
|
98
115
|
# Projects & milestones
|
|
99
116
|
atoll project list
|
|
100
117
|
atoll milestone list --project <project-id>
|
|
101
118
|
```
|
|
102
119
|
|
|
120
|
+
Prefer the CLI for routine task operations, heartbeat checks, comments, and feedback. Use direct API calls when the CLI does not expose the needed endpoint yet.
|
|
121
|
+
|
|
122
|
+
CLI JSON conventions:
|
|
123
|
+
|
|
124
|
+
- Use `--json` for machine-readable output.
|
|
125
|
+
- List commands return `{ resource, items, total, limit, offset, nextOffset, truncated, hint }`.
|
|
126
|
+
- Diagnostics and errors go to stderr.
|
|
127
|
+
- `atoll agent-context` returns a versioned command/flag manifest and available profile context.
|
|
128
|
+
|
|
103
129
|
## Quick Start — API (for advanced use)
|
|
104
130
|
|
|
105
131
|
All CLI commands map to REST endpoints. Use the API directly when the CLI doesn't cover a specific operation.
|
|
@@ -119,7 +145,7 @@ atoll "/api/orgs/$ATOLL_ORG_ID/issues?status=todo"
|
|
|
119
145
|
|
|
120
146
|
## The Heartbeat Loop
|
|
121
147
|
|
|
122
|
-
The primary pattern for autonomous agents. `GET /api/orgs/{id}/heartbeat` returns
|
|
148
|
+
The primary pattern for autonomous agents. Prefer `atoll heartbeat --json` when the CLI is available; it wraps `GET /api/orgs/{id}/heartbeat` and returns the same computed briefing:
|
|
123
149
|
|
|
124
150
|
- **Goal status** with days remaining
|
|
125
151
|
- **KPI pace**: `pace_needed` vs `pace_actual`, trend (`accelerating`/`decelerating`/`flat`), staleness
|
|
@@ -129,6 +155,15 @@ The primary pattern for autonomous agents. `GET /api/orgs/{id}/heartbeat` return
|
|
|
129
155
|
|
|
130
156
|
Signal types: `kpi_off_pace`, `kpi_stale`, `issue_stale`, `issue_blocked`, `milestone_overdue`, `initiative_stalled`, `webhook_failing`. Severity: `info`, `warning`, `critical`.
|
|
131
157
|
|
|
158
|
+
Useful CLI forms:
|
|
159
|
+
|
|
160
|
+
```bash
|
|
161
|
+
atoll heartbeat
|
|
162
|
+
atoll heartbeat --signals-only
|
|
163
|
+
atoll heartbeat --severity critical
|
|
164
|
+
atoll heartbeat --json
|
|
165
|
+
```
|
|
166
|
+
|
|
132
167
|
**The agent loop:**
|
|
133
168
|
1. Call heartbeat
|
|
134
169
|
2. Read signals (highest severity first)
|
|
@@ -141,7 +176,8 @@ Signal types: `kpi_off_pace`, `kpi_stale`, `issue_stale`, `issue_blocked`, `mile
|
|
|
141
176
|
### Pick up and complete a task
|
|
142
177
|
|
|
143
178
|
```bash
|
|
144
|
-
atoll
|
|
179
|
+
atoll heartbeat --signals-only # orient first
|
|
180
|
+
atoll issue list --status todo --assignee self --json # find assigned work
|
|
145
181
|
atoll issue update ATOLL-42 --status in_progress # start work
|
|
146
182
|
atoll comment add ATOLL-42 --body "Progress update…" # report progress
|
|
147
183
|
atoll issue update ATOLL-42 --status done # complete
|
|
@@ -190,7 +226,7 @@ Full endpoint tables and field schemas:
|
|
|
190
226
|
|
|
191
227
|
All endpoints are under `/api/orgs/{orgId}/...`.
|
|
192
228
|
|
|
193
|
-
† `DELETE /issues/{id}` requires `owner` or `admin` role — any caller without that role (including member-role agents) gets `403`. If you just need to remove a task, use `POST /api/orgs/{orgId}/issues/{issueId}/archive` (soft delete, no role gate); reverse with `DELETE` on the same path (unarchive).
|
|
229
|
+
† `DELETE /issues/{id}` requires `owner` or `admin` role — any caller without that role (including member-role agents) gets `403`. If you just need to remove a task, use `POST /api/orgs/{orgId}/issues/{issueId}/archive` (soft delete, no role gate); reverse with `DELETE` on the same path (unarchive). In the CLI, prefer `atoll issue archive <id>`. Permanent `atoll issue delete <id>` requires `--force` and supports `--dry-run`.
|
|
194
230
|
|
|
195
231
|
### Quick enum reference
|
|
196
232
|
|
|
@@ -226,6 +262,14 @@ curl -X POST https://atollhq.com/api/feedback \
|
|
|
226
262
|
|
|
227
263
|
No authentication required. Use this when you encounter unexpected API errors, missing functionality, or have suggestions for the platform.
|
|
228
264
|
|
|
265
|
+
The CLI can record the same feedback locally, and optionally submit upstream:
|
|
266
|
+
|
|
267
|
+
```bash
|
|
268
|
+
atoll feedback "The /issues endpoint returns 500 when filtering by milestoneId and status together"
|
|
269
|
+
atoll feedback --send "heartbeat should emit issue_blocked signals directly"
|
|
270
|
+
atoll feedback list --json
|
|
271
|
+
```
|
|
272
|
+
|
|
229
273
|
## Notes
|
|
230
274
|
|
|
231
275
|
- Request bodies accept camelCase; responses use snake_case
|
|
@@ -231,6 +231,14 @@ Returns computed briefing with goal status, KPI pace/trend, initiative progress,
|
|
|
231
231
|
|
|
232
232
|
Signal types: `kpi_off_pace`, `kpi_stale`, `issue_stale`, `issue_blocked`, `milestone_overdue`, `initiative_stalled`, `webhook_failing`. Severity: `info`, `warning`, `critical`.
|
|
233
233
|
|
|
234
|
+
CLI equivalent:
|
|
235
|
+
|
|
236
|
+
```bash
|
|
237
|
+
atoll heartbeat --json
|
|
238
|
+
atoll heartbeat --signals-only
|
|
239
|
+
atoll heartbeat --severity critical
|
|
240
|
+
```
|
|
241
|
+
|
|
234
242
|
## Activity
|
|
235
243
|
|
|
236
244
|
| Method | Endpoint | Description |
|
|
@@ -419,3 +427,11 @@ No authentication required. Sends feedback to the Atoll team's internal board.
|
|
|
419
427
|
| Method | Endpoint | Description |
|
|
420
428
|
|--------|----------|-------------|
|
|
421
429
|
| POST | `/api/feedback` | Submit bug report or feature request (`{ type, description, userEmail?, userName?, url? }`)
|
|
430
|
+
|
|
431
|
+
CLI equivalent:
|
|
432
|
+
|
|
433
|
+
```bash
|
|
434
|
+
atoll feedback "Describe the bug or feature request"
|
|
435
|
+
atoll feedback --send "Submit upstream as well"
|
|
436
|
+
atoll feedback list --json
|
|
437
|
+
```
|