coaiajs 0.3.3 → 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.
Files changed (44) hide show
  1. package/README.md +10 -4
  2. package/agents/custom_gpt/ceremony.yml +3341 -0
  3. package/dist/mcp/config.d.ts.map +1 -1
  4. package/dist/mcp/config.js +0 -2
  5. package/dist/mcp/config.js.map +1 -1
  6. package/dist/mcp/server.js +3 -8
  7. package/dist/mcp/server.js.map +1 -1
  8. package/dist/mcp/tools/coaiapy-tools.d.ts.map +1 -1
  9. package/dist/mcp/tools/coaiapy-tools.js +3 -18
  10. package/dist/mcp/tools/coaiapy-tools.js.map +1 -1
  11. package/dist/src/cli.js +157 -96
  12. package/dist/src/cli.js.map +1 -1
  13. package/dist/src/langfuse/client.d.ts +44 -11
  14. package/dist/src/langfuse/client.d.ts.map +1 -1
  15. package/dist/src/langfuse/client.js +171 -8
  16. package/dist/src/langfuse/client.js.map +1 -1
  17. package/dist/src/langfuse/comments.js +2 -2
  18. package/dist/src/langfuse/comments.js.map +1 -1
  19. package/dist/src/langfuse/index.d.ts +4 -2
  20. package/dist/src/langfuse/index.d.ts.map +1 -1
  21. package/dist/src/langfuse/index.js +2 -1
  22. package/dist/src/langfuse/index.js.map +1 -1
  23. package/dist/src/langfuse/observations.d.ts +37 -2
  24. package/dist/src/langfuse/observations.d.ts.map +1 -1
  25. package/dist/src/langfuse/observations.js +132 -61
  26. package/dist/src/langfuse/observations.js.map +1 -1
  27. package/dist/src/langfuse/projects.d.ts +2 -0
  28. package/dist/src/langfuse/projects.d.ts.map +1 -0
  29. package/dist/src/langfuse/projects.js +8 -0
  30. package/dist/src/langfuse/projects.js.map +1 -0
  31. package/dist/src/langfuse/scores.d.ts +9 -3
  32. package/dist/src/langfuse/scores.d.ts.map +1 -1
  33. package/dist/src/langfuse/scores.js +33 -22
  34. package/dist/src/langfuse/scores.js.map +1 -1
  35. package/dist/src/langfuse/traces.d.ts +16 -5
  36. package/dist/src/langfuse/traces.d.ts.map +1 -1
  37. package/dist/src/langfuse/traces.js +112 -105
  38. package/dist/src/langfuse/traces.js.map +1 -1
  39. package/llms-full.txt +8 -5
  40. package/llms.txt +3 -3
  41. package/package.json +7 -2
  42. package/rispecs/03-langfuse-module.spec.md +5 -0
  43. package/rispecs/08-cli-interface.spec.md +8 -5
  44. package/rispecs/09-mcp-server.spec.md +2 -2
@@ -1,67 +1,38 @@
1
1
  // coaiajs/src/langfuse/traces.ts — Trace operations
2
2
  // Port of cofuse.py trace functions
3
- import { v4 as uuidv4 } from 'uuid';
4
- import { getClient, nowISO } from './client.js';
3
+ import { getClient } from './client.js';
4
+ import { ALL_OBSERVATION_FIELDS, fetchAllObservations, fetchObservationsPage, } from './observations.js';
5
5
  export async function addTrace(params) {
6
6
  const client = getClient();
7
- const now = nowISO();
8
- const traceId = params.traceId ?? uuidv4();
9
- const body = {
10
- id: traceId,
11
- timestamp: now,
12
- };
13
- if (params.sessionId)
14
- body.sessionId = params.sessionId;
15
- if (params.name)
16
- body.name = params.name;
17
- if (params.inputData)
18
- body.input = params.inputData;
19
- if (params.outputData)
20
- body.output = params.outputData;
21
- if (params.userId)
22
- body.userId = params.userId;
23
- if (params.metadata)
24
- body.metadata = params.metadata;
25
- const event = {
26
- id: `${traceId}-event`,
27
- timestamp: now,
28
- type: 'trace-create',
29
- body,
30
- };
31
- await client.ingest([event]);
7
+ const metadata = asRecord(params.metadata);
8
+ const result = await client.exportObservation({
9
+ traceId: params.traceId,
10
+ name: params.name ?? 'trace',
11
+ type: 'SPAN',
12
+ input: params.inputData,
13
+ output: params.outputData,
14
+ metadata,
15
+ traceName: params.name,
16
+ userId: params.userId,
17
+ sessionId: params.sessionId,
18
+ tags: params.tags,
19
+ version: params.version,
20
+ environment: params.environment,
21
+ traceMetadata: metadata,
22
+ });
32
23
  return JSON.stringify({
33
24
  success: true,
34
- traceId,
35
- message: `Trace ${traceId} created`,
25
+ traceId: result.traceId,
26
+ rootObservationId: result.observationId,
27
+ message: `Trace ${result.traceId} created through OpenTelemetry`,
36
28
  }, null, 2);
37
29
  }
38
- export async function patchTraceOutput(traceIdOrParams, outputData) {
39
- const traceId = typeof traceIdOrParams === 'string' ? traceIdOrParams : traceIdOrParams.traceId;
40
- if (!traceId)
41
- throw new Error('traceId is required');
42
- const output = typeof traceIdOrParams === 'string'
43
- ? outputData
44
- : parseJsonOption(traceIdOrParams.outputData ?? traceIdOrParams.output);
45
- const client = getClient();
46
- const now = nowISO();
47
- const body = {
48
- id: traceId,
49
- timestamp: now,
50
- output,
51
- };
52
- const eventId = `${traceId}-patch-${uuidv4().slice(0, 8)}`;
53
- const event = {
54
- id: eventId,
55
- timestamp: now,
56
- type: 'trace-create',
57
- body,
58
- };
59
- await client.ingest([event]);
60
- return JSON.stringify({
61
- success: true,
62
- traceId,
63
- message: `Trace output patched for ${traceId}`,
64
- }, null, 2);
30
+ /**
31
+ * Langfuse v4 observations are immutable after export. Callers must set the
32
+ * root observation output before it is ended and exported.
33
+ */
34
+ export async function patchTraceOutput(_traceIdOrParams, _outputData) {
35
+ throw new Error('patchTraceOutput is not supported by Langfuse v4. Set output when creating the root observation.');
65
36
  }
66
37
  function parseJsonOption(value) {
67
38
  if (typeof value !== 'string')
@@ -73,6 +44,12 @@ function parseJsonOption(value) {
73
44
  return value;
74
45
  }
75
46
  }
47
+ function asRecord(value) {
48
+ const parsed = parseJsonOption(value);
49
+ return parsed && typeof parsed === 'object' && !Array.isArray(parsed)
50
+ ? parsed
51
+ : undefined;
52
+ }
76
53
  export async function createTrace(params) {
77
54
  return addTrace({
78
55
  traceId: params.traceId ?? params.id,
@@ -82,60 +59,43 @@ export async function createTrace(params) {
82
59
  inputData: parseJsonOption(params.inputData ?? params.input),
83
60
  outputData: parseJsonOption(params.outputData ?? params.output),
84
61
  metadata: parseJsonOption(params.metadata),
62
+ tags: params.tags,
63
+ version: params.version,
64
+ environment: params.environment,
85
65
  });
86
66
  }
87
- export async function listTraces(filters) {
88
- const client = getClient();
89
- const params = new URLSearchParams();
90
- if (filters.sessionId)
91
- params.set('sessionId', filters.sessionId);
92
- if (filters.userId)
93
- params.set('userId', filters.userId);
94
- if (filters.name)
95
- params.set('name', filters.name);
96
- if (filters.fromTimestamp)
97
- params.set('fromTimestamp', filters.fromTimestamp);
98
- if (filters.toTimestamp)
99
- params.set('toTimestamp', filters.toTimestamp);
100
- if (filters.orderBy)
101
- params.set('orderBy', filters.orderBy);
102
- if (filters.version)
103
- params.set('version', filters.version);
104
- if (filters.release)
105
- params.set('release', filters.release);
106
- if (filters.tags) {
107
- for (const tag of filters.tags)
108
- params.append('tags', tag);
67
+ export async function listTraces(filters = {}) {
68
+ if (filters.orderBy) {
69
+ throw new Error('Langfuse v4 observations are always sorted by startTime descending; orderBy is unsupported.');
109
70
  }
110
- if (filters.environment) {
111
- for (const env of filters.environment)
112
- params.append('environment', env);
71
+ if (filters.release) {
72
+ throw new Error('Langfuse v4 Observations API v2 does not support filtering by release.');
113
73
  }
114
- const page = filters.page ?? 1;
115
- const limit = filters.limit ?? 50;
116
- params.set('page', String(page));
117
- params.set('limit', String(limit));
118
- const qs = params.toString();
119
- const path = `/api/public/traces${qs ? `?${qs}` : ''}`;
120
- const result = await client.request('GET', path);
121
- return JSON.stringify(result, null, 2);
74
+ const filter = buildTraceFilter(filters);
75
+ const result = await fetchObservationsPage({
76
+ fields: ALL_OBSERVATION_FIELDS,
77
+ limit: filters.limit ?? 50,
78
+ cursor: filters.cursor,
79
+ filter,
80
+ });
81
+ const traces = result.data.map(traceFromRootObservation);
82
+ return JSON.stringify({ data: traces, meta: result.meta }, null, 2);
122
83
  }
123
84
  export async function getTrace(traceId) {
124
- const client = getClient();
125
- const trace = await client.request('GET', `/api/public/traces/${traceId}`);
126
- // Fetch observations for this trace
127
- try {
128
- const obsResult = await client.request('GET', `/api/public/observations?traceId=${traceId}`);
129
- if (obsResult && typeof obsResult === 'object' && 'data' in obsResult) {
130
- trace.observations = obsResult.data;
131
- }
132
- else {
133
- trace.observations = obsResult;
134
- }
135
- }
136
- catch {
137
- trace.observations = [];
138
- }
85
+ const observations = await fetchAllObservations({
86
+ fields: ALL_OBSERVATION_FIELDS,
87
+ traceId,
88
+ limit: 1000,
89
+ });
90
+ if (!observations.length)
91
+ throw new Error(`Trace not found: ${traceId}`);
92
+ const root = observations.find((observation) => observation.isRootObservation === true)
93
+ ?? observations.find((observation) => !observation.parentObservationId)
94
+ ?? observations[observations.length - 1];
95
+ const trace = {
96
+ ...traceFromRootObservation(root),
97
+ observations,
98
+ };
139
99
  return JSON.stringify(trace, null, 2);
140
100
  }
141
101
  export async function traceView(traceId) {
@@ -143,9 +103,56 @@ export async function traceView(traceId) {
143
103
  return formatTraceTree(raw);
144
104
  }
145
105
  export async function sessionView(sessionId) {
146
- const raw = await listTraces({ sessionId, limit: 20, orderBy: 'timestamp.desc' });
106
+ const raw = await listTraces({ sessionId, limit: 20 });
147
107
  return formatTracesMarkdown(raw);
148
108
  }
109
+ function buildTraceFilter(filters) {
110
+ const result = [{
111
+ type: 'boolean', column: 'isRootObservation', operator: '=', value: true,
112
+ }];
113
+ if (filters.sessionId)
114
+ result.push(stringFilter('sessionId', filters.sessionId));
115
+ if (filters.userId)
116
+ result.push(stringFilter('userId', filters.userId));
117
+ if (filters.name)
118
+ result.push(stringFilter('traceName', filters.name));
119
+ if (filters.version)
120
+ result.push(stringFilter('version', filters.version));
121
+ if (filters.fromTimestamp)
122
+ result.push(datetimeFilter('startTime', '>=', filters.fromTimestamp));
123
+ if (filters.toTimestamp)
124
+ result.push(datetimeFilter('startTime', '<', filters.toTimestamp));
125
+ if (filters.tags?.length) {
126
+ result.push({ type: 'arrayOptions', column: 'tags', operator: 'all of', value: filters.tags });
127
+ }
128
+ if (filters.environment?.length) {
129
+ result.push({ type: 'stringOptions', column: 'environment', operator: 'any of', value: filters.environment });
130
+ }
131
+ return result;
132
+ }
133
+ function stringFilter(column, value) {
134
+ return { type: 'string', column, operator: '=', value };
135
+ }
136
+ function datetimeFilter(column, operator, value) {
137
+ return { type: 'datetime', column, operator, value };
138
+ }
139
+ function traceFromRootObservation(observation) {
140
+ return {
141
+ id: observation.traceId,
142
+ name: observation.traceName ?? observation.name,
143
+ sessionId: observation.sessionId,
144
+ userId: observation.userId,
145
+ timestamp: observation.startTime,
146
+ input: observation.input,
147
+ output: observation.output,
148
+ metadata: observation.metadata,
149
+ tags: observation.tags,
150
+ release: observation.release,
151
+ version: observation.version,
152
+ environment: observation.environment,
153
+ rootObservationId: observation.id,
154
+ };
155
+ }
149
156
  // ─── Formatters ─────────────────────────────────────────────────────
150
157
  export function formatTracesTable(json) {
151
158
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"traces.js","sourceRoot":"","sources":["../../../src/langfuse/traces.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"traces.js","sourceRoot":"","sources":["../../../src/langfuse/traces.ts"],"names":[],"mappings":"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"}
package/llms-full.txt CHANGED
@@ -162,13 +162,16 @@ MobileTemplateEngine, TemplateLoader, TemplateRenderer
162
162
 
163
163
  Client and errors: `LangfuseClient`, `LangfuseApiError`, `getClient`, `resetClient`, `nowISO`, `detectContentType`
164
164
 
165
+ Langfuse Cloud v4 compatibility: writes use the scoped JS SDK v5 and OpenTelemetry endpoint; trace/observation/session reads use Observations API v2; score reads use Scores API v3. `patchTraceOutput` remains as a compatibility export that throws because v4 observations are immutable.
166
+
165
167
  - **Traces:** `createTrace`, `addTrace`, `getTrace`, `listTraces`, `patchTraceOutput`, `traceView`, `sessionView`
166
- - **Observations:** `addObservation`, `addObservations`, `getObservation`
168
+ - **Observations:** `addObservation`, `addObservations`, `listObservations`, `getObservation`
167
169
  - **Prompts:** `createPrompt`, `getPrompt`, `listPrompts`
168
170
  - **Datasets:** `createDataset`, `getDataset`, `listDatasets`, `createDatasetItem`, `listDatasetItems`
169
171
  - **Scores:** `createScore`, `listScores`, `createScoreForTarget`, `applyScoreToTrace`, `createScoreConfig`, `getScoreConfig`, `listScoreConfigs`, `applyScoreConfig`, `importScoreConfigs`, `exportScoreConfigs`, `getBuiltInPresets`, `installPreset`
170
172
  - **Comments:** `createComment`, `getComment`, `listComments`
171
173
  - **Media:** `uploadAndAttachMedia`, `getMedia`
174
+ - **Projects:** `listProjects`
172
175
  - **Formatters:** `formatTracesTable`, `formatTracesMarkdown`, `formatTraceTree`, `formatObservationDisplay`, `formatPromptMarkdown`, `formatPromptDisplay`, `formatPromptsTable`, `formatDatasetsTable`, `formatDatasetForFinetuning`, `formatScoresTable`, `formatScoreConfigsTable`, `formatMediaDisplay`
173
176
 
174
177
  ### Exported types
@@ -191,7 +194,7 @@ PipelineVariable, PipelineStep, PipelineTemplate, CoaiaConfig
191
194
  npx coaiajs-mcp
192
195
  ```
193
196
 
194
- Transport: **stdio**. Serves **63 tools, 3 prompts, 1 listable resource**.
197
+ Transport: **stdio**. Serves **62 tools, 3 prompts, 1 listable resource**.
195
198
 
196
199
  Flags: `--memory-path <path>` (JSONL knowledge graph), `--plans-dir <path>`, `--feature-level <level>`.
197
200
 
@@ -212,15 +215,15 @@ Claude Code / client registration:
212
215
  | Level | Effect |
213
216
  |---|---|
214
217
  | `MINIMAL` | Core tash/fetch and essential graph tools |
215
- | `STANDARD` | Default — the 63 tools listed below |
218
+ | `STANDARD` | Default — the 62 tools listed below |
216
219
  | `OBSERVABILITY` | Same set as `STANDARD` |
217
220
  | `FULL` | Everything, including media tools |
218
221
 
219
- ### Tools — coaiapy + Langfuse (20)
222
+ ### Tools — coaiapy + Langfuse (19)
220
223
 
221
224
  ```
222
225
  coaia_tash, coaia_fetch,
223
- coaia_fuse_trace_create, coaia_fuse_add_observation, coaia_fuse_trace_patch_output,
226
+ coaia_fuse_trace_create, coaia_fuse_add_observation,
224
227
  coaia_fuse_trace_get, coaia_fuse_trace_view, coaia_fuse_observation_get,
225
228
  coaia_fuse_traces_list, coaia_fuse_traces_session_view,
226
229
  coaia_fuse_prompts_list, coaia_fuse_prompts_get,
package/llms.txt CHANGED
@@ -1,6 +1,6 @@
1
1
  # coaiajs
2
2
 
3
- > TypeScript package consolidating the CoAIA (Creative Orientation AI Architecture) ecosystem into one installable unit: a **library**, a **CLI** (`coaia`), and an **MCP server** (`coaiajs-mcp`, 63 tools). Its core data model is the *structural tension chart* — desired outcome, current reality, and telescoping action steps — backed by a JSONL knowledge graph.
3
+ > TypeScript package consolidating the CoAIA (Creative Orientation AI Architecture) ecosystem into one installable unit: a **library**, a **CLI** (`coaia`), and an **MCP server** (`coaiajs-mcp`, 62 tools). Its core data model is the *structural tension chart* — desired outcome, current reality, and telescoping action steps — backed by a JSONL knowledge graph.
4
4
 
5
5
  Install with `npm install coaiajs`. Requires Node.js >= 20. **ESM only** — there is no CommonJS build, so `require('coaiajs')` will not work. Ships `.d.ts` for every entry point.
6
6
 
@@ -9,7 +9,7 @@ Key facts an agent usually needs first:
9
9
  - Import from `coaiajs` (root) or a subpath such as `coaiajs/narrative`. **Do not** import `coaiajs/src/*.js` — `src/` is not shipped in the published package.
10
10
  - Clients (Redis, OpenAI, Polly, Octokit) are lazy: importing a module opens no connection and reads no file. Call `disconnect()` when finished.
11
11
  - Config precedence: environment variables > `.env` files > `coaia.json` > defaults.
12
- - The MCP server serves 63 tools, 3 prompts, and 1 listable resource over stdio. `COAIAJS_FEATURES` (`MINIMAL`/`STANDARD`/`OBSERVABILITY`/`FULL`) controls the tool set; default is `STANDARD`.
12
+ - The MCP server serves 62 tools, 3 prompts, and 1 listable resource over stdio. `COAIAJS_FEATURES` (`MINIMAL`/`STANDARD`/`OBSERVABILITY`/`FULL`) controls the tool set; default is `STANDARD`.
13
13
 
14
14
  ## Documentation
15
15
 
@@ -28,7 +28,7 @@ Key facts an agent usually needs first:
28
28
  - `coaiajs/github`: `listIssues`, `getIssue`, `getIssueComments`
29
29
  - `coaiajs/environment`: `EnvironmentManager`, `createEnvironment`, `findEnvironment`
30
30
  - `coaiajs/version`: `getPackageVersion`
31
- - `coaiajs/langfuse`: tracing, observations, prompts, datasets, scores, comments, media
31
+ - `coaiajs/langfuse`: Langfuse v4-compatible OpenTelemetry tracing, Observations API v2, Scores API v3, prompts, datasets, comments, media, projects
32
32
  - `coaiajs/narrative`: `KnowledgeGraphManager`, structural tension charts, markdown export
33
33
  - `coaiajs/pde`: Prompt Decomposition Engine — sessions, STC mapping
34
34
  - `coaiajs/planning`: `parsePlan`, `planToSTC`, `syncToChart`, `syncToPlan`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "coaiajs",
3
- "version": "0.3.3",
3
+ "version": "0.4.0",
4
4
  "type": "module",
5
5
  "description": "CoAIA unified TypeScript monorepo — CLI, MCP server, and library consolidating coaia-narrative, coaia-pde, coaia-planning, and coaiapy patterns into one package.",
6
6
  "main": "./dist/src/index.js",
@@ -62,6 +62,7 @@
62
62
  },
63
63
  "files": [
64
64
  "dist",
65
+ "agents/custom_gpt",
65
66
  "rispecs",
66
67
  "README.md",
67
68
  "KINSHIP.md",
@@ -87,14 +88,18 @@
87
88
  },
88
89
  "dependencies": {
89
90
  "@aws-sdk/client-polly": "^3.1117.0",
91
+ "@langfuse/client": "^5.10.1",
92
+ "@langfuse/otel": "^5.10.1",
93
+ "@langfuse/tracing": "^5.10.1",
90
94
  "@modelcontextprotocol/sdk": "^1.30.0",
91
95
  "@octokit/rest": "^21.1.1",
96
+ "@opentelemetry/api": "^1.9.1",
97
+ "@opentelemetry/sdk-trace-node": "^2.10.0",
92
98
  "chalk": "^5.6.2",
93
99
  "commander": "^12.1.0",
94
100
  "dotenv": "^16.6.1",
95
101
  "ioredis": "^5.11.1",
96
102
  "js-yaml": "^4.1.0",
97
- "langfuse": "^3.38.20",
98
103
  "minimist": "^1.2.8",
99
104
  "openai": "^4.104.0",
100
105
  "uuid": "^11.1.1",
@@ -14,6 +14,9 @@ A comprehensive Langfuse client covering traces, observations, prompts, datasets
14
14
  - [`traces.ts`](../src/langfuse/traces.ts), [`observations.ts`](../src/langfuse/observations.ts), [`prompts.ts`](../src/langfuse/prompts.ts), [`datasets.ts`](../src/langfuse/datasets.ts), [`scores.ts`](../src/langfuse/scores.ts), [`comments.ts`](../src/langfuse/comments.ts), and [`media.ts`](../src/langfuse/media.ts) port the coaiapy `cofuse.py` surface.
15
15
  - [`index.ts`](../src/langfuse/index.ts) exposes a public barrel for `coaiajs/langfuse`.
16
16
  - [`mcp/server.ts`](../mcp/server.ts) wires coaiapy-compatible Langfuse MCP tools such as `coaia_fuse_trace_create`, `coaia_fuse_add_observation`, `coaia_fuse_score_apply`, comments, prompts, datasets, and media.
17
+ - Langfuse v4 migration is implemented: trace writes use the scoped JS SDK v5 and `POST /api/public/otel/v1/traces`; trace, observation, and session reads use Observations API v2; score reads use Scores API v3.
18
+ - V4 observations are immutable: root input/output must be complete before export, sessions are reconstructed by `sessionId`, and the legacy patch-output MCP/CLI operation is removed.
19
+ - The Custom GPT action spec at [`agents/custom_gpt/ceremony.yml`](../agents/custom_gpt/ceremony.yml) remains OpenAPI 3.1.0 and uses the supported v4 endpoints.
17
20
  - Types defined in [`src/types.ts`](../src/types.ts): `ScoreCategory`, `ScoreConfig`.
18
21
  - Remaining gap: not every Langfuse formatting and cache helper from `cofuse.py` has a TypeScript equivalent; the core trace/observation/prompt/dataset/score/comment/media path is present.
19
22
 
@@ -100,4 +103,6 @@ Langfuse REST API uses Basic auth: `base64(publicKey:secretKey)`. Config provide
100
103
  - ✅ Pagination handled transparently (auto-page through results when needed)
101
104
  - ✅ Auth failure returns clear error, not cryptic 401
102
105
  - ✅ Missing credentials detected at call time, not import time
106
+ - ✅ No trace/observation writes use the sunset legacy ingestion API
107
+ - ✅ No trace, observation, session, or score reads use deprecated v1/v2 endpoints
103
108
  - ✅ Response types validated with Zod before returning
@@ -74,13 +74,16 @@ coaia env unset <key> # Remove env var
74
74
 
75
75
  ### Langfuse Commands
76
76
  ```
77
- coaia fuse traces [--limit N] # List traces
78
- coaia fuse trace <id> # Get trace details
79
- coaia fuse prompts [--name X] # List prompts
80
- coaia fuse scores [--trace-id X] # List scores
81
- coaia fuse datasets # List datasets
77
+ coaia fuse traces list [--from ISO --to ISO --cursor X] # V4 traces reconstructed from observations
78
+ coaia fuse traces trace-view <id> # V4 observation tree
79
+ coaia fuse traces create --name X [--input JSON --output JSON] # OTEL root observation
80
+ coaia fuse prompts get <name> [--md] # Markdown by default
81
+ coaia fuse scores list [--trace-id X --cursor X] # Scores API v3
82
+ coaia fuse sessions view <id> # Session reconstructed by sessionId
82
83
  ```
83
84
 
85
+ Langfuse v4 removes legacy session entities and immutable observation updates, so the CLI does not expose session creation/add-node or trace patch-output commands.
86
+
84
87
  ### Narrative Commands
85
88
  ```
86
89
  coaia narrative charts # List all active charts
@@ -4,7 +4,7 @@
4
4
 
5
5
  ## Desired Outcome
6
6
 
7
- A single MCP server (`coaiajs-mcp`) that consolidates the 44 tools from coaia-narrative (27), coaia-pde (12), and coaia-planning (5) into one server, adds 20 new tools for Redis, Langfuse, pipeline, and audio, and supports feature gating so resource-constrained environments can load only what they need.
7
+ A single MCP server (`coaiajs-mcp`) that consolidates the 44 tools from coaia-narrative (27), coaia-pde (12), and coaia-planning (5) into one server, adds 19 new tools for Redis, Langfuse, pipeline, and audio, and supports feature gating so resource-constrained environments can load only what they need.
8
8
 
9
9
  ## Structural Tension
10
10
 
@@ -94,7 +94,7 @@ MMOT: `perform_mmot_evaluation`, `init_llm_guidance`
94
94
 
95
95
  ### Langfuse
96
96
 
97
- `coaia_fuse_trace_create`, `coaia_fuse_add_observation`, `coaia_fuse_trace_patch_output`, `coaia_fuse_trace_get`, `coaia_fuse_trace_view`, `coaia_fuse_observation_get`, `coaia_fuse_traces_list`, `coaia_fuse_traces_session_view`, comments, prompts, datasets, score configs, score application, and media tools.
97
+ `coaia_fuse_trace_create`, `coaia_fuse_add_observation`, `coaia_fuse_trace_get`, `coaia_fuse_trace_view`, `coaia_fuse_observation_get`, `coaia_fuse_traces_list`, `coaia_fuse_traces_session_view`, comments, prompts, datasets, score configs, score application, and media tools.
98
98
 
99
99
  ### Resources
100
100