codex-agent-view 0.4.4 → 0.4.6
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/.codex-plugin/plugin.json +4 -4
- package/README.ko.md +15 -12
- package/README.md +16 -13
- package/package.json +2 -2
- package/public/app.js +265 -129
- package/public/index.html +14 -12
- package/public/styles.css +106 -1
- package/scripts/send-hook.mjs +10 -3
- package/skills/codex-agent-view/SKILL.md +46 -14
- package/skills/show-agents/SKILL.md +11 -1
- package/src/core/index.mjs +0 -1
- package/src/core/monitor-store.mjs +250 -18
- package/src/core/normalize-hook-payload.mjs +91 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "codex-agent-view",
|
|
3
|
-
"version": "0.4.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "0.4.6",
|
|
4
|
+
"description": "Follow Codex work and participating agent progress in a clear, read-only live view inside the official Codex app.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Junho Yoon",
|
|
7
7
|
"url": "https://github.com/JunhoYoon95"
|
|
@@ -12,8 +12,8 @@
|
|
|
12
12
|
"skills": "./skills/",
|
|
13
13
|
"interface": {
|
|
14
14
|
"displayName": "Codex Agent View",
|
|
15
|
-
"shortDescription": "
|
|
16
|
-
"longDescription": "
|
|
15
|
+
"shortDescription": "See work and agent progress.",
|
|
16
|
+
"longDescription": "See active work, a privacy-minimized request summary, participating agents, and progress inside the official Codex app. Select the plugin first, then explicitly invoke the bundled $show-agents skill to open the live view; the plugin does not append or auto-run action text.",
|
|
17
17
|
"developerName": "Junho Yoon",
|
|
18
18
|
"category": "Productivity",
|
|
19
19
|
"brandColor": "#123F35",
|
package/README.ko.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
> [Read in English](https://github.com/JunhoYoon95/codex-agent-view/blob/main/README.md)
|
|
4
4
|
|
|
5
|
-
Codex Agent View는
|
|
5
|
+
Codex Agent View는 Codex가 지금 어떤 작업을 수행하고 있고 어떤 에이전트가 참여하는지 한눈에 보여주는 읽기 전용 companion plugin이다. 공식 Codex 앱을 그대로 사용하며, 신뢰한 hook이 로컬 실시간 연결을 준비하고 bundled **Show Agents** skill이 앱 안에서 현황 화면을 연다. Codex를 대체하거나 작업을 제어하지 않는다.
|
|
6
6
|
|
|
7
7
|
> 비공식 커뮤니티 프로젝트이며 OpenAI의 공식 제품, 제휴 제품, 공식 지원 프로젝트가 아니다.
|
|
8
8
|
|
|
@@ -10,10 +10,10 @@ Codex Agent View는 공식 Codex 앱 안에서 여러 workspace의 active task
|
|
|
10
10
|
|
|
11
11
|
### 빠른 시작: 설치 후에는 Codex 앱 안에서만 사용
|
|
12
12
|
|
|
13
|
-
이 README는 `codex-agent-view@0.4.
|
|
13
|
+
이 README는 `codex-agent-view@0.4.6` 사용법을 설명한다. **최초 설치만** 일반 터미널에서 아래 exact-version 명령으로 진행한다.
|
|
14
14
|
|
|
15
15
|
```bash
|
|
16
|
-
npm install --global codex-agent-view@0.4.
|
|
16
|
+
npm install --global codex-agent-view@0.4.6
|
|
17
17
|
codex-agent-view install
|
|
18
18
|
```
|
|
19
19
|
|
|
@@ -34,13 +34,13 @@ Trust된 첫 hook이 도착하면 plugin sender가 로컬 backend를 내부적
|
|
|
34
34
|
|
|
35
35
|
공개 Codex plugin API에는 prompt 없이 앱 시작과 동시에 sidebar, panel 또는 Browser tab을 생성하는 기능이 없다. 따라서 live 화면을 열 때 Codex 앱 안에서 `$show-agents` skill을 한 번 명시 선택해야 한다. 이미 오른쪽에 열린 live tab은 2초마다 자동 갱신하고, backend가 같은 loopback origin으로 돌아오면 일시 연결 단절·monitor 재시작·package upgrade 뒤에도 자동 재연결한다. Live view를 호출한 task 자신은 앱이 제공한 `CODEX_THREAD_ID`로 제외하므로 viewer task가 목록 위에 반복 노출되지 않는다. Monitor가 재시작되면 live 관찰 window는 새로 시작하며 read-only viewer credential만 유지된다.
|
|
36
36
|
|
|
37
|
-
Live UI의 기본 언어는 영어이며 language selector에서 **English**, **한국어**, **Español**을 고를 수 있다.
|
|
37
|
+
Live UI의 기본 언어는 영어이며 language selector에서 **English**, **한국어**, **Español**을 고를 수 있다. 활동은 refresh 때 접히는 disclosure toggle 없이 계속 보이고, 2초 polling 간격도 유지한다. 각 작업에는 `UserPromptSubmit`에서 만든 첫 번째 유효 요청 요약을 표시할 수 있다. Sender는 원문 중 최대 4,096자만 검사하고 일반적인 credential, 이메일 주소, 링크와 절대 경로를 가린 뒤 한 줄·최대 180자로 제한하며 전체 요청 원문은 즉시 버린다. 이후의 짧은 follow-up은 이 첫 요약을 덮지 않는다. 실제 확인한 `SubagentStart` payload는 `agent_id`, `agent_type`만 제공하며 전용 할당 작업 설명 field가 없다. 따라서 작업 전체의 요청 요약은 보여주되 prompt나 tool input에서 에이전트별 할당 내용을 추측하지 않는다.
|
|
38
38
|
|
|
39
39
|
요약하면 설치는 터미널에서 한 번, 조회·상태 확인·live 화면 열기와 이후 사용은 Codex 앱 안에서 수행한다.
|
|
40
40
|
|
|
41
41
|
### 현재 상태
|
|
42
42
|
|
|
43
|
-
`0.4.
|
|
43
|
+
`0.4.6`은 lifecycle 정확성을 바로잡는 릴리스다. `SessionEnd`에 최종 우선순위를 부여하고, 끝나지 않은 child activity를 성공으로 추정하지 않은 채 정리하며, 늦게 도착한 event가 완료된 turn을 다시 실행 중으로 열지 못하게 한다. 종료 신호 없이 오래 남은 활동은 무기한 **실행 중**으로 두지 않고 **종료 미확인**으로 표시한다. 아래의 기존 제품 구성은 그대로 유지한다.
|
|
44
44
|
|
|
45
45
|
- 공식 Codex 앱의 내장 thread tools를 우선 사용하는 app-native active-task snapshot skill
|
|
46
46
|
- `.codex-plugin/plugin.json`, local marketplace catalog, genuine Codex skill
|
|
@@ -88,12 +88,15 @@ Codex Agent View는 historical audit이나 session replay 제품이 아니라
|
|
|
88
88
|
|
|
89
89
|
- 앱 안의 현재 task snapshot은 공식 Codex 앱이 제공하는 내장 thread tools의 explicit status와 `subAgentActivity`를 우선 사용한다.
|
|
90
90
|
- Hook event는 local monitor의 세부 lifecycle 상태에 대한 source of truth다. Monitor state는 bounded memory에만 있고 재시작하면 새 관찰 window가 시작된다. 별도 private viewer credential은 task history가 아니라 인증 metadata다.
|
|
91
|
+
- `Stop`은 관찰된 root turn과 session/work-item 요약을 즉시 `completed`로 표시한다. 진행 중이던 child agent나 tool은 자체 stop/tool completion 신호를 관찰하지 못했으므로 해당 row에서 별도로 `completion_not_observed`로 표시한다. `SessionEnd`는 terminal priority를 가지며, 그 시점에도 열려 있는 child agent·tool·permission은 완료로 추정하지 않고 `interrupted`로 표시한다.
|
|
92
|
+
- 공식 `SessionEnd` 전달은 최대 30분 지연될 수 있다. 종료 hook을 관찰하지 못한 채 활동이 열린 상태로 남으면 새 event가 없는 5분 뒤 `completion_not_observed`(**종료 미확인**)로 바꾸며 `completed`로 추정하지 않는다. 지연되거나 누락된 terminal event 때문에 오래된 활동을 완료·성공으로 잘못 표시하지 않기 위한 경계다.
|
|
91
93
|
- Read-only viewer credential은 한 설치 수명 동안 monitor 재시작과 upgrade를 넘어 유지되며, runtime/control token은 별도 process-scoped credential이다.
|
|
92
94
|
- 설치·trust·앱 재시작 뒤 첫 trusted hook이 backend를 자동 준비한다. 이는 monitor process 준비이며 Codex 화면이나 tab을 몰래 생성하는 기능이 아니다.
|
|
93
95
|
- 외부 telemetry, 원격 server, account, 필수 SQLite/영구 event store가 없다.
|
|
94
|
-
- prompt
|
|
95
|
-
- 기본 monitor는
|
|
96
|
+
- 전체 prompt 원문, transcript path, 전체 tool input/output, assistant message를 monitor 상태나 UI에 저장·표시하지 않는다. 위에서 설명한 bounded/redacted 한 줄 작업 요약만 process memory에 유지할 수 있다.
|
|
97
|
+
- 기본 monitor는 진행 중인 작업과 참여 에이전트를 먼저 정렬하고 사람이 읽을 수 있는 label/status를 우선하며, raw ID와 event name은 주 정보로 표시하지 않는다. Live card에는 session ID를 표시하지 않는다.
|
|
96
98
|
- task/subagent 중지·재시작, message 전송, permission 자동 승인·거절 기능이 없다.
|
|
99
|
+
- Sender는 기존 bounded retry와 fail-open 동작을 유지한다. Disk queue나 persistent replay가 없으므로 hook budget 안에 전달하지 못한 event를 나중에 재생하지 않는다.
|
|
97
100
|
- 별도로 실행한 App Server는 앱 내장 thread tools와 다른 process다. 공식 앱의 live source로 간주하거나 둘을 같은 API로 설명하지 않는다.
|
|
98
101
|
|
|
99
102
|
별도로 실행한 Codex `0.146` App Server의 `thread/list` fallback도 실제 확인했지만 현재 root/subagent가 모두 `notLoaded`로 나타나 공식 앱의 live running/completed 상태를 공유하지 않았다. Persisted parent ID, alias, depth 보강은 가능했지만 live 판별에는 채택하지 않았다. `0.3.0`의 primary snapshot은 이 별도 server가 아니라 현재 공식 앱이 직접 제공하는 내장 thread tools를 사용한다.
|
|
@@ -114,11 +117,11 @@ Hook event가 누락·중복·역순으로 올 수 있으므로 UI의 `unknown`,
|
|
|
114
117
|
|
|
115
118
|
1. Codex Agent View plugin 카드의 **지금 사용해보기**를 누른다. 이 동작은 `@codex-agent-view`만 선택하며 prompt를 제출하거나 skill을 호출하지 않는다.
|
|
116
119
|
2. Codex 앱에서 bundled `$show-agents` skill을 명시 선택한다. Skill은 trusted hook이 자동 준비한 healthy backend를 재사용하고, 아직 준비되지 않았다면 내부적으로 준비한 뒤 앱에서 live 화면 열기를 시도한다.
|
|
117
|
-
3. Panel은 `CODEX_THREAD_ID`로 이 viewer 호출 task를 제외하고, 나머지
|
|
120
|
+
3. Panel은 `CODEX_THREAD_ID`로 이 viewer 호출 task를 제외하고, 나머지 진행 중인 작업과 참여 에이전트를 먼저 배치하며 사람이 읽을 수 있는 프로젝트·요청 요약·에이전트·상태 문구를 표시한다. Session ID는 표시하지 않으며 전체 요청 원문, preview, tool input/output과 full workspace path도 숨긴다.
|
|
118
121
|
4. Language selector에서 **English**, **한국어**, **Español**을 선택한다. 기본값은 영어이고 언어 전환 뒤에도 2초 refresh는 유지된다.
|
|
119
122
|
5. 앱의 Browser capability 또는 permission을 사용할 수 없으면 private localhost URL을 노출하거나 외부 browser를 여는 대신 실패를 안내한다.
|
|
120
123
|
|
|
121
|
-
오른쪽 live 화면을 닫았다면 Codex 앱 task에서 `@codex-agent-view`를 선택하고 `$show-agents`를 다시 명시 호출한다. 붙여 넣은 `@codex-agent-view $show-agents` 문자열이 skill 선택으로 재해석된다고 가정하지 않는다. 열린 tab은 일시 단절·monitor 재시작·upgrade 뒤에도 자동 재연결한다. 재시작된 monitor는 과거 event를 재생하지 않고 새 in-memory 관찰 window를 표시한다.
|
|
124
|
+
오른쪽 live 화면을 닫았다면 Codex 앱 task에서 `@codex-agent-view`를 선택하고 `$show-agents`를 다시 명시 호출한다. 붙여 넣은 `@codex-agent-view $show-agents` 문자열이 skill 선택으로 재해석된다고 가정하지 않는다. 열린 tab은 일시 단절·monitor 재시작·upgrade 뒤에도 자동 재연결한다. 요청 실패 화면에는 **연결 다시 시도** 버튼이 있고, 인증이 거부되거나 사라진 화면에는 앱 안 복구 안내와 현재 tab의 인증을 다시 확인하는 버튼이 나타난다. 다만 페이지가 private credential을 스스로 발급하거나 복구할 수는 없으므로 재확인이 실패하면 Codex 앱에서 실제 `$show-agents` skill을 선택해 새 인증 화면을 연다. 복구에 terminal command, private URL 복사 또는 외부 browser는 필요 없다. 재시작된 monitor는 과거 event를 재생하지 않고 새 in-memory 관찰 window를 표시한다.
|
|
122
125
|
|
|
123
126
|
### 요구사항과 검증 범위
|
|
124
127
|
|
|
@@ -211,16 +214,16 @@ Plugin enable/trust와 앱 재시작 뒤 생성되거나 재개되는 task는 tr
|
|
|
211
214
|
|
|
212
215
|
### npm 설치 명령 참고
|
|
213
216
|
|
|
214
|
-
아래 명령은 `0.4.
|
|
217
|
+
아래 명령은 `0.4.6`을 exact version으로 설치한다.
|
|
215
218
|
|
|
216
219
|
```bash
|
|
217
|
-
npm install --global codex-agent-view@0.4.
|
|
220
|
+
npm install --global codex-agent-view@0.4.6
|
|
218
221
|
codex-agent-view install
|
|
219
222
|
```
|
|
220
223
|
|
|
221
224
|
이 두 명령 뒤에는 Codex 앱을 완전히 다시 열고 Plugins 화면에서 설치·활성화와 hook trust를 확인한 다음 새 task를 만든다. 첫 trusted hook이 backend 준비와 event 전달을 내부 처리하므로 사용자가 monitor CLI를 실행하지 않는다. Plugin 카드의 **지금 사용해보기**로 `@codex-agent-view`를 선택하고 앱에서 `$show-agents`를 명시 선택한다. Panel을 닫은 뒤에도 같은 방식으로 skill을 다시 선택한다.
|
|
222
225
|
|
|
223
|
-
`0.4.
|
|
226
|
+
`0.4.6` 설치 경로는 위의 global package 설치와 명시적인 `codex-agent-view install` command 조합이다. 이후 일반 사용은 Codex 앱 안에서 진행한다. 이전의 유효한 설치에서 upgrade하면 installation-owned read-only viewer credential을 유지하며, `0.4.3`에서 검증한 legacy `0.4.2` migration 동작도 그대로 보존한다. Token과 private URL은 출력하지 않는다.
|
|
224
227
|
|
|
225
228
|
Version별 npm, install, migration, CI, tag와 GitHub Release evidence는 [docs/distribution.md](docs/distribution.md)에 보존한다. 각 evidence는 실제 확인한 뒤에만 갱신한다.
|
|
226
229
|
|
package/README.md
CHANGED
|
@@ -2,18 +2,18 @@
|
|
|
2
2
|
|
|
3
3
|
> [Read in Korean](https://github.com/JunhoYoon95/codex-agent-view/blob/main/README.ko.md)
|
|
4
4
|
|
|
5
|
-
Codex Agent View
|
|
5
|
+
Codex Agent View gives you a clear, read-only view of what Codex is working on and which agents are moving each work item forward. It stays inside the official Codex app, starts its local live connection through trusted hooks, and opens through the bundled **Show Agents** skill.
|
|
6
6
|
|
|
7
7
|
> This is an unofficial community project. It is not an OpenAI product, affiliate, or officially supported project.
|
|
8
8
|
|
|
9
9
|
## Quick start: install once, then stay inside the Codex app
|
|
10
10
|
|
|
11
|
-
This README documents `codex-agent-view@0.4.
|
|
11
|
+
This README documents `codex-agent-view@0.4.6`. Use the exact-version command below for the one-time terminal installation.
|
|
12
12
|
|
|
13
13
|
Universal Plugins Directory search installation is not available yet, so use a regular terminal for the **initial installation only**:
|
|
14
14
|
|
|
15
15
|
```bash
|
|
16
|
-
npm install --global codex-agent-view@0.4.
|
|
16
|
+
npm install --global codex-agent-view@0.4.6
|
|
17
17
|
codex-agent-view install
|
|
18
18
|
```
|
|
19
19
|
|
|
@@ -34,13 +34,13 @@ When the first trusted hook arrives, the plugin sender internally prepares the l
|
|
|
34
34
|
|
|
35
35
|
The public Codex plugin API does not provide no-prompt app-start creation of a sidebar, panel, or Browser tab. Opening the live view therefore requires one explicit `$show-agents` skill selection inside the Codex app. Once the right-side live tab is open, it refreshes every two seconds and automatically reconnects after a temporary disconnect, monitor restart, or package upgrade when the backend returns on the same loopback origin. The task that invoked the live view is excluded using the app-provided `CODEX_THREAD_ID`, so the monitor does not keep promoting its own viewer task. The live observation window still resets when the monitor process restarts; only the read-only viewer credential survives.
|
|
36
36
|
|
|
37
|
-
The live UI defaults to English and offers **English**, **Korean**, and **Spanish** in its language selector. Activity
|
|
37
|
+
The live UI defaults to English and offers **English**, **Korean**, and **Spanish** in its language selector. Activity remains visible rather than hidden behind refresh-sensitive disclosure toggles, and the two-second polling interval is unchanged. Each work item can show its first valid short request summary derived from `UserPromptSubmit`: the sender inspects at most 4,096 characters, redacts common credentials, email addresses, links, and absolute paths, collapses the result to one line, bounds it to 180 characters, and immediately discards the full request. Later follow-ups do not replace that first valid summary. Verified `SubagentStart` payloads still provide only `agent_id` and `agent_type`; they do not provide a dedicated assignment description. The monitor therefore shows the work-level request summary but does not invent an agent-specific assignment from prompts or tool input.
|
|
38
38
|
|
|
39
39
|
In short: install once in a terminal; perform snapshot queries, status checks, live-view opening, and all routine use inside the Codex app.
|
|
40
40
|
|
|
41
41
|
## Status
|
|
42
42
|
|
|
43
|
-
Version `0.4.
|
|
43
|
+
Version `0.4.6` is the lifecycle-correctness release. It gives `SessionEnd` terminal priority, settles unfinished child activity without pretending it succeeded, prevents late events from reopening a finished turn, and reports prolonged unconfirmed activity as **End not confirmed** instead of leaving it indefinitely **Running**. It retains the app-native snapshot skill, privacy-minimized hooks, bounded in-memory reducer, local authenticated live backend, and explicit install/remove plus maintainer-diagnostic CLI commands.
|
|
44
44
|
|
|
45
45
|
Plugin installation and lifecycle payloads were verified with Homebrew Codex CLI and the Codex executable embedded in the official app. However, a real-use attempt that installed and enabled `0.2.0` in an already-running official app process delivered zero events while two subagents ran. The monitor, registration, enablement, and installed bundle were healthy, while app logs showed no sender invocation. Evidence indicates that the same process retained a pre-install `hooks/list` snapshot; persisted exact-hook trust is not exposed through CLI JSON, so the precise skip boundary remains unconfirmed.
|
|
46
46
|
|
|
@@ -78,13 +78,16 @@ Codex Agent View is a live companion, not a historical audit or session-replay p
|
|
|
78
78
|
|
|
79
79
|
- The app-native current-task snapshot prioritizes explicit status and `subAgentActivity` from the official Codex app's built-in thread tools.
|
|
80
80
|
- Hooks remain the source of truth for detailed lifecycle state in the trusted-hook auto-prepared local live backend. Its operational state exists only in bounded process memory; restart begins a new observation window. The separate private viewer credential is authentication metadata, not stored task history.
|
|
81
|
+
- `Stop` marks the observed root turn and the session/work-item summary `completed` immediately. If a child agent or tool was still active, its own row is separately marked `completion_not_observed` because no child stop/tool completion signal was observed. `SessionEnd` has terminal priority; any child agent, tool, or permission still open at that point is shown as `interrupted`, not silently completed.
|
|
82
|
+
- Official `SessionEnd` delivery may be delayed by up to 30 minutes. If no ending hook is observed while activity still appears open, five minutes without a new event changes it to `completion_not_observed` (**End not confirmed**), never inferred `completed`. This keeps a delayed or missing terminal event from turning stale activity into a false success.
|
|
81
83
|
- The viewer credential is read-only and remains stable across monitor restarts and package upgrades during one installation. The runtime/control token remains separate and process-scoped.
|
|
82
84
|
- After installation, hook trust, and an app restart, the first trusted hook automatically prepares the backend. This prepares a local process; it does not create app UI without a user action.
|
|
83
85
|
- There is no external telemetry, remote server, account, required SQLite/persistent event store, or remote control.
|
|
84
|
-
-
|
|
85
|
-
- The default monitor sorts
|
|
86
|
+
- Full prompt text, transcript paths, full tool input/output, and assistant messages are not retained or displayed by the monitor. Only the bounded, redacted one-line work summary described above may be retained in process memory.
|
|
87
|
+
- The default monitor sorts active work and participating agents first, uses human-readable labels and statuses as the primary presentation, and keeps raw IDs and event names out of the primary reading path. Session IDs are not shown in the live cards.
|
|
86
88
|
- The product cannot stop or restart tasks/subagents, send messages, or approve/deny permissions.
|
|
87
89
|
- Missing, duplicated, or out-of-order events remain visible as empty, unknown, or degraded state instead of being guessed away.
|
|
90
|
+
- The sender keeps its bounded retry and fail-open behavior. It has no disk-backed queue or persistent replay; an event that cannot be delivered within the hook budget is not replayed later.
|
|
88
91
|
|
|
89
92
|
A separately launched Codex `0.146` App Server `thread/list` fallback was also tested. It reported both the current root and subagents as `notLoaded`, so it did not share the official app's live running/completed state. That separate process is not the same as the built-in thread tools exposed directly by the current official app; `0.3.0` uses the latter for its primary snapshot.
|
|
90
93
|
|
|
@@ -102,11 +105,11 @@ Use this flow in a **new task** after completing installation and enablement in
|
|
|
102
105
|
|
|
103
106
|
1. Select **Quick start** on the Codex Agent View plugin card. This selects only `@codex-agent-view`; it does not submit a prompt or invoke a skill.
|
|
104
107
|
2. Explicitly select the bundled `$show-agents` skill in the Codex app. The skill reuses the backend prepared by trusted hooks, or prepares it internally when still absent, then attempts to open the live view in the app.
|
|
105
|
-
3. The panel excludes this invoking viewer task using `CODEX_THREAD_ID`, puts the remaining
|
|
108
|
+
3. The panel excludes this invoking viewer task using `CODEX_THREAD_ID`, puts the remaining active work and participating agents first, and uses human-readable project, request-summary, agent, and status text. Session IDs are not shown. The full request, previews, tool input/output, and full workspace paths remain hidden.
|
|
106
109
|
4. Choose **English**, **Korean**, or **Spanish** from the language selector. English is the default, and changing language does not stop the two-second refresh.
|
|
107
110
|
5. If the app's Browser capability or permission is unavailable, the skill reports the failure without exposing a private localhost URL or opening an external browser.
|
|
108
111
|
|
|
109
|
-
If you close the right-side live view, select `@codex-agent-view` and explicitly invoke `$show-agents` again in a Codex app task. Do not rely on a pasted `@codex-agent-view $show-agents` string being reparsed as a skill selection. An open tab refreshes and reconnects automatically after temporary disconnects, monitor restarts, and upgrades. A restarted monitor presents a new in-memory observation window rather than replaying earlier activity.
|
|
112
|
+
If you close the right-side live view, select `@codex-agent-view` and explicitly invoke `$show-agents` again in a Codex app task. Do not rely on a pasted `@codex-agent-view $show-agents` string being reparsed as a skill selection. An open tab refreshes and reconnects automatically after temporary disconnects, monitor restarts, and upgrades. If a request fails, the live view provides a **Retry connection** button. If authentication is rejected or missing, it also provides an in-app recovery explanation and a button to check the current tab again; because the page cannot mint or recover a private credential by itself, use the actual `$show-agents` skill in the Codex app to open a newly authenticated view when that check cannot succeed. No terminal command, private URL copy, or external browser is part of recovery. A restarted monitor presents a new in-memory observation window rather than replaying earlier activity.
|
|
110
113
|
|
|
111
114
|
## Requirements and tested versions
|
|
112
115
|
|
|
@@ -163,16 +166,16 @@ After plugin enablement/trust and an app restart, the first trusted hook interna
|
|
|
163
166
|
|
|
164
167
|
## Install from npm
|
|
165
168
|
|
|
166
|
-
The commands below install `0.4.
|
|
169
|
+
The commands below install `0.4.6` by exact version.
|
|
167
170
|
|
|
168
171
|
```bash
|
|
169
|
-
npm install --global codex-agent-view@0.4.
|
|
172
|
+
npm install --global codex-agent-view@0.4.6
|
|
170
173
|
codex-agent-view install
|
|
171
174
|
```
|
|
172
175
|
|
|
173
176
|
After these two commands, fully reopen the Codex app, verify installation, enablement, and hook trust, then create a new task. The first trusted hook prepares the backend and delivers its event internally, so users do not run monitor CLI commands. Use the plugin card's **Quick start** action to select `@codex-agent-view`, then explicitly select `$show-agents` in the app. Repeat that explicit skill selection after closing the panel.
|
|
174
177
|
|
|
175
|
-
The `0.4.
|
|
178
|
+
The `0.4.6` installation path is the global package install followed by the explicit `codex-agent-view install` command above. Routine use remains inside the Codex app afterward. When upgrading an older valid installation, `install` preserves the installation-owned read-only viewer credential; the legacy `0.4.2` migration behavior remains as documented for `0.4.3`. Neither token nor the private URL is printed.
|
|
176
179
|
|
|
177
180
|
Version-specific npm, install, migration, CI, tag, and GitHub Release evidence is preserved in [Distribution](docs/distribution.md). That evidence is updated only after each item is actually verified.
|
|
178
181
|
|
|
@@ -190,7 +193,7 @@ If events are still absent, report the Codex app/CLI version, plugin version, ap
|
|
|
190
193
|
|
|
191
194
|
## Privacy
|
|
192
195
|
|
|
193
|
-
The normal hook path uses `scripts/send-hook.mjs`. It derives
|
|
196
|
+
The normal hook path uses `scripts/send-hook.mjs`. It derives a sanitized, 120-character-bounded workspace basename as `workspace_label`; the full `cwd` is not sent or stored as content. For `UserPromptSubmit` only, it also derives the bounded, redacted one-line `task_summary` described above. The raw request is discarded before transport. The reducer keeps the label, task summary, and narrower lifecycle state only in bounded memory. The normal monitor does not write an event JSONL history. The private viewer credential stored for reconnect continuity contains no task or hook-event state.
|
|
194
197
|
|
|
195
198
|
`scripts/capture-hook.mjs` is a separate, explicitly invoked Phase 0 diagnostic tool. Setting `CODEX_AGENT_VIEW_CAPTURE_FULL=1` for that script can write raw prompts, tool data, credentials, and other secrets. Normal install/start and the bundled skill never enable it automatically. Do not commit or publicly attach captures or runtime tokens.
|
|
196
199
|
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "codex-agent-view",
|
|
3
|
-
"version": "0.4.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "0.4.6",
|
|
4
|
+
"description": "Follow Codex work and participating agent progress in a clear, read-only live view inside the official Codex app.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./src/core/index.mjs",
|
|
7
7
|
"exports": "./src/core/index.mjs",
|