@pinta-ai/pinta-codex 1.2.0 → 1.2.2
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/CHANGELOG.md +6 -0
- package/README.md +40 -40
- package/dist/core/config.js +16 -6
- package/dist/core/config.js.map +1 -1
- package/dist/core/transport.js +8 -2
- package/dist/core/transport.js.map +1 -1
- package/package.json +1 -1
- package/tools/.data/events.json +0 -1585
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to pinta-codex are documented here.
|
|
4
4
|
|
|
5
|
+
## [1.2.1] - 2026-04-30
|
|
6
|
+
|
|
7
|
+
### Changed
|
|
8
|
+
|
|
9
|
+
- npm package name: `pinta-codex` → `@pinta-ai/pinta-codex` (consistent with `@pinta-ai/types`). git clone flow is unaffected — repository URL `awarecorp/pinta-codex` is unchanged.
|
|
10
|
+
|
|
5
11
|
## [1.2.0] - 2026-04-29 (BREAKING)
|
|
6
12
|
|
|
7
13
|
### BREAKING CHANGES
|
package/README.md
CHANGED
|
@@ -2,18 +2,18 @@
|
|
|
2
2
|
|
|
3
3
|
Generic OTLP forwarder for Codex hook events.
|
|
4
4
|
|
|
5
|
-
>
|
|
6
|
-
> **pinta-cc
|
|
7
|
-
>
|
|
5
|
+
> **End-user install guide:** [`docs/installation-guide.md`](./docs/installation-guide.md)
|
|
6
|
+
> **Differences from pinta-cc:** [`docs/codex-vs-claude-code.md`](./docs/codex-vs-claude-code.md)
|
|
7
|
+
> This README is a developer-oriented overview.
|
|
8
8
|
|
|
9
9
|
## Channels
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
Two channels are operated in parallel. They coexist on the same machine because each entry in `~/.codex/hooks.json` is discriminated by its absolute-path prefix.
|
|
12
12
|
|
|
13
|
-
| Channel |
|
|
14
|
-
|
|
15
|
-
| **Pinta Manager** (v0.2+) | Pinta
|
|
16
|
-
| **Git clone + npm run setup** | OSS / standalone |
|
|
13
|
+
| Channel | Audience | Install |
|
|
14
|
+
|---------|----------|---------|
|
|
15
|
+
| **Pinta Manager** (v0.2+) | Pinta users | The catalog installs the npm tarball and registers a `hooks.json` entry under the manager root prefix automatically. **No manual setup required.** |
|
|
16
|
+
| **Git clone + npm run setup** | OSS / standalone | See Quick start below. Endpoint/token are written directly to `~/.codex/pinta-codex.env`. |
|
|
17
17
|
|
|
18
18
|
## Quick start (OSS / standalone)
|
|
19
19
|
|
|
@@ -26,11 +26,11 @@ codex # hooks fire immediately
|
|
|
26
26
|
npm run doctor # verify everything green
|
|
27
27
|
```
|
|
28
28
|
|
|
29
|
-
`setup
|
|
29
|
+
`setup` is idempotent — re-running it is safe. `doctor` is read-only.
|
|
30
30
|
|
|
31
31
|
## What it captures
|
|
32
32
|
|
|
33
|
-
Codex
|
|
33
|
+
All five events that Codex's hook system (experimental; requires `features.codex_hooks = true` in `~/.codex/config.toml`) currently emits are handled.
|
|
34
34
|
|
|
35
35
|
| Event | Notes |
|
|
36
36
|
|-------|-------|
|
|
@@ -40,19 +40,19 @@ Codex의 hook 시스템 (실험적; `~/.codex/config.toml`의 `features.codex_ho
|
|
|
40
40
|
| `PostToolUse` | **Bash tool only** (current Codex limitation) |
|
|
41
41
|
| `Stop` | final flush |
|
|
42
42
|
|
|
43
|
-
|
|
43
|
+
Each invocation spawns `node dist/index.js`, maps the event to a single OTLP span, and POSTs it to `{endpoint}/traces`.
|
|
44
44
|
|
|
45
45
|
## Behavior
|
|
46
46
|
|
|
47
|
-
- OTLP/HTTP JSON transport.
|
|
48
|
-
- Top-level
|
|
49
|
-
- **No fail-close** —
|
|
50
|
-
- Disk-backed retry queue at `.plugin-data/failed-spans.jsonl` (cap 1000).
|
|
51
|
-
- One trace per user turn — `UserPromptSubmit` ULID
|
|
47
|
+
- OTLP/HTTP JSON transport. Headers are read from `OTEL_EXPORTER_OTLP_HEADERS` (`key=val,key=val` format)
|
|
48
|
+
- Top-level event fields are flattened into `codex.*` span attributes (Bronze; sibling adaptors use `cc.*`, `mcp.*`)
|
|
49
|
+
- **No fail-close** — every hook exits 0 on success (transmission failures are absorbed by the retry queue)
|
|
50
|
+
- Disk-backed retry queue at `.plugin-data/failed-spans.jsonl` (cap 1000). Drained on the next hook invocation
|
|
51
|
+
- One trace per user turn — based on the `UserPromptSubmit` ULID
|
|
52
52
|
|
|
53
53
|
## Configuration
|
|
54
54
|
|
|
55
|
-
`npm run setup`
|
|
55
|
+
`npm run setup` writes the endpoint and headers to `~/.codex/pinta-codex.env`. Environment variables override file values.
|
|
56
56
|
|
|
57
57
|
```bash
|
|
58
58
|
# OTel-spec (primary)
|
|
@@ -63,7 +63,7 @@ export OTEL_EXPORTER_OTLP_HEADERS="x-pinta-relay-token=YOUR-TOKEN"
|
|
|
63
63
|
export OTEL_EXPORTER_OTLP_HEADERS="Authorization=Bearer YOUR-TOKEN"
|
|
64
64
|
```
|
|
65
65
|
|
|
66
|
-
`~/.codex/pinta-codex.env
|
|
66
|
+
Example `~/.codex/pinta-codex.env`:
|
|
67
67
|
|
|
68
68
|
```env
|
|
69
69
|
OTEL_EXPORTER_OTLP_ENDPOINT=https://your-collector.example.com
|
|
@@ -86,11 +86,11 @@ export CODEX_HOME="/abs/path/to/.codex" # override ~/.codex dur
|
|
|
86
86
|
|
|
87
87
|
## Identity — not needed
|
|
88
88
|
|
|
89
|
-
v1.2
|
|
89
|
+
Since v1.2 the Pinta CLI dependency has been removed. Identity attachment is the responsibility of the relay layer. Pinta Manager attaches it on forward, and OSS users handle it in their own pipeline. The plugin itself runs without identity, and no hook is blocked by its absence.
|
|
90
90
|
|
|
91
91
|
## Manual install (advanced)
|
|
92
92
|
|
|
93
|
-
|
|
93
|
+
If you don't want to use the interactive setup:
|
|
94
94
|
|
|
95
95
|
```bash
|
|
96
96
|
npm run build
|
|
@@ -98,16 +98,16 @@ npm run install-hooks # merges absolute paths into ~/.codex/hoo
|
|
|
98
98
|
npm run install-hooks -- --dry-run # preview without writing
|
|
99
99
|
```
|
|
100
100
|
|
|
101
|
-
`install-hooks`
|
|
101
|
+
`install-hooks` is idempotent: if `~/.codex/hooks.json` already matches the bundled template, it's a no-op (`already up to date`). Stale pinta-codex entries from previous paths are detected and removed automatically (`removed N stale pinta-codex entries`).
|
|
102
102
|
|
|
103
|
-
`~/.codex/config.toml
|
|
103
|
+
Add the following manually to `~/.codex/config.toml`:
|
|
104
104
|
|
|
105
105
|
```toml
|
|
106
106
|
[features]
|
|
107
107
|
codex_hooks = true
|
|
108
108
|
```
|
|
109
109
|
|
|
110
|
-
> **Why an install script?** Codex
|
|
110
|
+
> **Why an install script?** Codex does not yet auto-load hooks from `.codex-plugin/plugin.json`. `install-hooks` substitutes `${CODEX_PLUGIN_ROOT}` in the bundled `hooks.json` template with an absolute path and merges it into the user-level file. Once Codex adds plugin-hook auto-discovery, this step will go away.
|
|
111
111
|
|
|
112
112
|
## Uninstall
|
|
113
113
|
|
|
@@ -115,13 +115,13 @@ codex_hooks = true
|
|
|
115
115
|
npm run uninstall-hooks
|
|
116
116
|
```
|
|
117
117
|
|
|
118
|
-
|
|
118
|
+
This removes only this plugin's entries from `~/.codex/hooks.json` (those referencing `dist/index.js`). Other hooks are left untouched.
|
|
119
119
|
|
|
120
|
-
|
|
120
|
+
For a complete removal:
|
|
121
121
|
|
|
122
122
|
```bash
|
|
123
123
|
rm ~/.codex/pinta-codex.env
|
|
124
|
-
#
|
|
124
|
+
# Manually remove the [features] codex_hooks = true line from ~/.codex/config.toml
|
|
125
125
|
```
|
|
126
126
|
|
|
127
127
|
## Local development
|
|
@@ -132,13 +132,13 @@ Mock server (OTLP viewer at `http://localhost:3000`):
|
|
|
132
132
|
npm run mock-server
|
|
133
133
|
```
|
|
134
134
|
|
|
135
|
-
|
|
135
|
+
In another terminal, point the endpoint at the mock and start Codex:
|
|
136
136
|
|
|
137
137
|
```bash
|
|
138
138
|
OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:3000 codex
|
|
139
139
|
```
|
|
140
140
|
|
|
141
|
-
|
|
141
|
+
Or set up via stdin pipe:
|
|
142
142
|
|
|
143
143
|
```bash
|
|
144
144
|
printf 'http://localhost:3000\n\n' | npm run setup
|
|
@@ -161,21 +161,21 @@ printf 'http://localhost:3000\n\n' | npm run setup
|
|
|
161
161
|
|
|
162
162
|
## BREAKING CHANGES from 1.0.x / 1.1.x
|
|
163
163
|
|
|
164
|
-
|
|
164
|
+
See [`CHANGELOG.md`](./CHANGELOG.md) for the full migration guide.
|
|
165
165
|
|
|
166
|
-
|
|
167
|
-
- Pinta CLI
|
|
168
|
-
- `PINTA_CODEX_ENDPOINT` / `PINTA_CODEX_API_KEY` → `OTEL_EXPORTER_OTLP_ENDPOINT` / `OTEL_EXPORTER_OTLP_HEADERS` (legacy
|
|
169
|
-
- PreToolUse fail-close
|
|
170
|
-
- `member.identity.*` resource
|
|
166
|
+
Summary:
|
|
167
|
+
- Pinta CLI dependency removed. `pinta login` no longer required
|
|
168
|
+
- `PINTA_CODEX_ENDPOINT` / `PINTA_CODEX_API_KEY` → `OTEL_EXPORTER_OTLP_ENDPOINT` / `OTEL_EXPORTER_OTLP_HEADERS` (legacy keys are still recognized for backward compatibility and auto-migrated on the next `npm run setup`)
|
|
169
|
+
- PreToolUse fail-close removed. Every hook exits 0 on success
|
|
170
|
+
- `member.identity.*` resource attributes removed
|
|
171
171
|
|
|
172
|
-
###
|
|
172
|
+
### Migration actions
|
|
173
173
|
|
|
174
|
-
|
|
|
175
|
-
|
|
176
|
-
| **Pinta Manager v0.2+** |
|
|
177
|
-
| **Git clone (
|
|
178
|
-
|
|
|
174
|
+
| Channel | Action |
|
|
175
|
+
|---------|--------|
|
|
176
|
+
| **Pinta Manager v0.2+** | Automatic. On the next reconcile, the existing hook entry is replaced with the manager-installed 1.2.0 entry, and `PINTA_*` keys in `~/.codex/pinta-codex.env` are renamed to `OTEL_*`. |
|
|
177
|
+
| **Git clone (existing users)** | Run `git pull && npm run setup` once. Setup auto-migrates legacy `PINTA_CODEX_*` keys to OTel keys (with a `.bak` backup). |
|
|
178
|
+
| **No re-setup** | If the hooks themselves are still 1.0.x/1.1.x code, they keep working. If `dist/` has been built at 1.2.0 but only `PINTA_CODEX_*` keys remain, the backward-compat path kicks in (re-setup recommended). |
|
|
179
179
|
|
|
180
180
|
## Repo layout
|
|
181
181
|
|
package/dist/core/config.js
CHANGED
|
@@ -36,12 +36,22 @@ function readEnvFile(p) {
|
|
|
36
36
|
return out;
|
|
37
37
|
}
|
|
38
38
|
function resolveEndpoint(envFile) {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
39
|
+
// Per OTel spec:
|
|
40
|
+
// OTEL_EXPORTER_OTLP_TRACES_ENDPOINT = full URL (use as-is)
|
|
41
|
+
// OTEL_EXPORTER_OTLP_ENDPOINT = base URL (append /v1/traces)
|
|
42
|
+
// We treat values from manager (and the user-facing parity vars) as full URLs.
|
|
43
|
+
const tracesEndpoint = process.env.OTEL_EXPORTER_OTLP_TRACES_ENDPOINT ??
|
|
44
|
+
envFile.OTEL_EXPORTER_OTLP_TRACES_ENDPOINT;
|
|
45
|
+
if (tracesEndpoint)
|
|
46
|
+
return tracesEndpoint;
|
|
47
|
+
const baseEndpoint = process.env.OTEL_EXPORTER_OTLP_ENDPOINT ??
|
|
48
|
+
envFile.OTEL_EXPORTER_OTLP_ENDPOINT;
|
|
49
|
+
if (baseEndpoint)
|
|
50
|
+
return baseEndpoint.replace(/\/+$/, "") + "/v1/traces";
|
|
51
|
+
return (process.env.PINTA_CODEX_ENDPOINT ?? // legacy (full URL)
|
|
52
|
+
envFile.PINTA_CODEX_ENDPOINT ?? // legacy
|
|
53
|
+
process.env.CLAUDE_PLUGIN_OPTION_ENDPOINT // parity (full URL)
|
|
54
|
+
);
|
|
45
55
|
}
|
|
46
56
|
function resolveHeaders(envFile) {
|
|
47
57
|
// Primary: OTel-spec, already in `key=val,key=val` format
|
package/dist/core/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"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"}
|
package/dist/core/transport.js
CHANGED
|
@@ -8,7 +8,7 @@ function hintFor(status) {
|
|
|
8
8
|
if (status === 401 || status === 403)
|
|
9
9
|
return " — check OTEL_EXPORTER_OTLP_HEADERS";
|
|
10
10
|
if (status === 404)
|
|
11
|
-
return " — check
|
|
11
|
+
return " — check OTEL_EXPORTER_OTLP_TRACES_ENDPOINT path";
|
|
12
12
|
if (status >= 500)
|
|
13
13
|
return " — collector may be down";
|
|
14
14
|
return "";
|
|
@@ -46,10 +46,16 @@ class Transport {
|
|
|
46
46
|
}
|
|
47
47
|
}
|
|
48
48
|
async post(payload) {
|
|
49
|
+
// Callers (send/flush) already early-return when endpoint is unset, but
|
|
50
|
+
// TS can't narrow across method calls — assert here.
|
|
51
|
+
const endpoint = this.config.endpoint;
|
|
52
|
+
if (!endpoint)
|
|
53
|
+
return false;
|
|
49
54
|
const ctrl = new AbortController();
|
|
50
55
|
const timer = setTimeout(() => ctrl.abort(), TIMEOUT_MS);
|
|
51
56
|
try {
|
|
52
|
-
|
|
57
|
+
// config.endpoint is the full traces URL (config.ts handles base→full).
|
|
58
|
+
const res = await fetch(endpoint, {
|
|
53
59
|
method: "POST",
|
|
54
60
|
headers: {
|
|
55
61
|
"Content-Type": "application/json",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../../src/core/transport.ts"],"names":[],"mappings":";;;AAEA,uCAAuC;AACvC,qDAA8C;AAE9C,MAAM,UAAU,GAAG,IAAI,CAAC;AAExB,SAAS,OAAO,CAAC,MAAc;IAC7B,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,qCAAqC,CAAC;IACnF,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../../src/core/transport.ts"],"names":[],"mappings":"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"}
|