@j0hanz/cortex-mcp 1.1.2 → 1.2.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 +67 -143
- package/dist/engine/reasoner.d.ts +1 -1
- package/dist/engine/reasoner.d.ts.map +1 -1
- package/dist/engine/reasoner.js +10 -6
- package/dist/engine/reasoner.js.map +1 -1
- package/dist/instructions.md +10 -13
- package/dist/lib/formatting.d.ts +28 -1
- package/dist/lib/formatting.d.ts.map +1 -1
- package/dist/lib/formatting.js +86 -0
- package/dist/lib/formatting.js.map +1 -1
- package/dist/lib/validators.js +1 -1
- package/dist/lib/validators.js.map +1 -1
- package/dist/schemas/inputs.d.ts +3 -3
- package/dist/schemas/inputs.d.ts.map +1 -1
- package/dist/schemas/inputs.js +27 -10
- package/dist/schemas/inputs.js.map +1 -1
- package/dist/schemas/outputs.d.ts +36 -0
- package/dist/schemas/outputs.d.ts.map +1 -1
- package/dist/schemas/outputs.js +6 -1
- package/dist/schemas/outputs.js.map +1 -1
- package/dist/tools/reasoning-think.d.ts.map +1 -1
- package/dist/tools/reasoning-think.js +28 -9
- package/dist/tools/reasoning-think.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,28 +1,25 @@
|
|
|
1
1
|
# Cortex MCP
|
|
2
2
|
|
|
3
|
-
[](https://www.npmjs.com/package/@j0hanz/cortex-mcp) [](https://www.npmjs.com/package/@j0hanz/cortex-mcp) [](https://github.com/j0hanz/cortex-mcp/actions/workflows/release.yml) [](https://nodejs.org) [](https://www.typescriptlang.org) [](https://opensource.org/licenses/MIT)
|
|
4
4
|
|
|
5
|
-
[](https://insiders.vscode.dev/redirect/mcp/install?name=cortex-mcp&config=%7B%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40j0hanz%2Fcortex-mcp%40latest%22%5D%7D) [](https://insiders.vscode.dev/redirect/mcp/install?name=cortex-mcp&config=%7B%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40j0hanz%2Fcortex-mcp%40latest%22%5D%7D&quality=insiders) [](https://vs-open.link/mcp-install?name=cortex-mcp&config=%7B%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40j0hanz%2Fcortex-mcp%40latest%22%5D%7D)
|
|
6
6
|
|
|
7
|
-
[](https://
|
|
7
|
+
[](cursor://anysphere.cursor-deeplink/mcp/install?name=cortex-mcp&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBqMGhhbnovY29ydGV4LW1jcEBsYXRlc3QiXX0=) [](https://lmstudio.ai/install-mcp?name=cortex-mcp&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBqMGhhbnovY29ydGV4LW1jcEBsYXRlc3QiXX0=)
|
|
8
8
|
|
|
9
|
-
Multi-level reasoning MCP server with configurable depth levels.
|
|
10
|
-
|
|
11
|
-
Cortex MCP exposes a single `reasoning.think` tool over stdio, providing structured reasoning with session continuity, resource views, prompt/resource completions, and task execution for multi-step runs.
|
|
9
|
+
Multi-level reasoning MCP server with configurable depth levels. Designed for complex problem-solving that requires structured thought chains and session continuity across multiple tool calls.
|
|
12
10
|
|
|
13
11
|
## Key Features
|
|
14
12
|
|
|
15
|
-
- Multi-level reasoning
|
|
16
|
-
-
|
|
17
|
-
-
|
|
18
|
-
- Resource
|
|
19
|
-
-
|
|
20
|
-
- Prompt helpers for building correct tool calls.
|
|
13
|
+
- **Multi-level reasoning**: `basic` (3–5 thoughts), `normal` (6–10 thoughts), and `high` (15–25 thoughts).
|
|
14
|
+
- **Session Continuity**: Maintain context across multiple tool calls with session IDs.
|
|
15
|
+
- **Task Execution**: Supports long-running reasoning tasks with progress notifications.
|
|
16
|
+
- **Resource Views**: Inspect active sessions and detailed reasoning traces via MCP resources.
|
|
17
|
+
- **Completable Arguments**: Offers completions for session IDs, levels, and thought names.
|
|
21
18
|
|
|
22
19
|
## Requirements
|
|
23
20
|
|
|
24
|
-
- Node.js >= 24
|
|
25
|
-
- An MCP client that supports stdio servers
|
|
21
|
+
- **Node.js**: >= 24 (see `package.json` engines)
|
|
22
|
+
- An MCP client that supports stdio servers.
|
|
26
23
|
|
|
27
24
|
## Quick Start
|
|
28
25
|
|
|
@@ -42,20 +39,16 @@ Standard config (works in most MCP clients):
|
|
|
42
39
|
## Client Configuration
|
|
43
40
|
|
|
44
41
|
<details>
|
|
45
|
-
<summary><b>Install in
|
|
46
|
-
|
|
47
|
-
[](https://insiders.vscode.dev/redirect/mcp/install?name=cortex-mcp&config=%7B%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40j0hanz%2Fcortex-mcp%40latest%22%5D%7D)
|
|
42
|
+
<summary><b>Install in Claude Desktop</b></summary>
|
|
48
43
|
|
|
49
|
-
Add to
|
|
44
|
+
Add to `claude_desktop_config.json`:
|
|
50
45
|
|
|
51
46
|
```json
|
|
52
47
|
{
|
|
53
|
-
"
|
|
54
|
-
"
|
|
55
|
-
"
|
|
56
|
-
|
|
57
|
-
"args": ["-y", "@j0hanz/cortex-mcp@latest"]
|
|
58
|
-
}
|
|
48
|
+
"mcpServers": {
|
|
49
|
+
"cortex-mcp": {
|
|
50
|
+
"command": "npx",
|
|
51
|
+
"args": ["-y", "@j0hanz/cortex-mcp@latest"]
|
|
59
52
|
}
|
|
60
53
|
}
|
|
61
54
|
}
|
|
@@ -64,9 +57,7 @@ Add to your user `settings.json`:
|
|
|
64
57
|
</details>
|
|
65
58
|
|
|
66
59
|
<details>
|
|
67
|
-
<summary><b>Install in VS Code
|
|
68
|
-
|
|
69
|
-
[](https://insiders.vscode.dev/redirect/mcp/install?name=cortex-mcp&config=%7B%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40j0hanz%2Fcortex-mcp%40latest%22%5D%7D&quality=insiders)
|
|
60
|
+
<summary><b>Install in VS Code</b></summary>
|
|
70
61
|
|
|
71
62
|
Add to your user `settings.json`:
|
|
72
63
|
|
|
@@ -88,8 +79,6 @@ Add to your user `settings.json`:
|
|
|
88
79
|
<details>
|
|
89
80
|
<summary><b>Install in Cursor</b></summary>
|
|
90
81
|
|
|
91
|
-
[](https://cursor.com/en/install-mcp?name=cortex-mcp&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBqMGhhbnovY29ydGV4LW1jcEBsYXRlc3QiXX0=)
|
|
92
|
-
|
|
93
82
|
Add to `~/.cursor/mcp.json`:
|
|
94
83
|
|
|
95
84
|
```json
|
|
@@ -105,154 +94,89 @@ Add to `~/.cursor/mcp.json`:
|
|
|
105
94
|
|
|
106
95
|
</details>
|
|
107
96
|
|
|
108
|
-
<details>
|
|
109
|
-
<summary><b>Install in Claude Desktop</b></summary>
|
|
110
|
-
|
|
111
|
-
Add to `claude_desktop_config.json`:
|
|
112
|
-
|
|
113
|
-
```json
|
|
114
|
-
{
|
|
115
|
-
"mcpServers": {
|
|
116
|
-
"cortex-mcp": {
|
|
117
|
-
"command": "npx",
|
|
118
|
-
"args": ["-y", "@j0hanz/cortex-mcp@latest"]
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
```
|
|
123
|
-
|
|
124
|
-
</details>
|
|
125
|
-
|
|
126
97
|
## MCP Surface
|
|
127
98
|
|
|
128
99
|
### Tools
|
|
129
100
|
|
|
130
|
-
#### reasoning.think
|
|
101
|
+
#### `reasoning.think`
|
|
131
102
|
|
|
132
103
|
Perform multi-step reasoning on a query with a selected depth level.
|
|
133
104
|
|
|
134
|
-
| Name
|
|
135
|
-
|
|
|
136
|
-
| query | string
|
|
137
|
-
| level | enum
|
|
138
|
-
|
|
|
139
|
-
|
|
|
140
|
-
|
|
|
141
|
-
|
|
|
142
|
-
|
|
|
143
|
-
|
|
144
|
-
Returns a structured result with session metadata, thoughts, and token usage:
|
|
105
|
+
| Name | Type | Required | Default | Description |
|
|
106
|
+
| :--------------- | :----------- | :------- | :------ | :---------------------------------------------------------------------------- |
|
|
107
|
+
| `query` | string | No | - | The question or problem to reason about (required for new sessions). |
|
|
108
|
+
| `level` | enum | No | - | Reasoning depth level: `basic`, `normal`, `high` (required for new sessions). |
|
|
109
|
+
| `targetThoughts` | number | No | - | Optional explicit thought count within the selected level range. |
|
|
110
|
+
| `sessionId` | string | No | - | Session ID to continue a previous reasoning session. |
|
|
111
|
+
| `runMode` | enum | No | `step` | `step` appends one thought; `run_to_completion` consumes multiple thoughts. |
|
|
112
|
+
| `thought` | string/array | Yes | - | Your full reasoning content for this step (verbatim). |
|
|
113
|
+
| `thoughts` | array | No | - | (Deprecated) Additional thought inputs for `run_to_completion`. |
|
|
145
114
|
|
|
146
|
-
|
|
147
|
-
{
|
|
148
|
-
"ok": true,
|
|
149
|
-
"result": {
|
|
150
|
-
"sessionId": "8e2e2c7a-1234-4567-89ab-001122334455",
|
|
151
|
-
"level": "normal",
|
|
152
|
-
"status": "active",
|
|
153
|
-
"thoughts": [{ "index": 0, "content": "Step 1/6: ...", "revision": 0 }],
|
|
154
|
-
"generatedThoughts": 1,
|
|
155
|
-
"requestedThoughts": 6,
|
|
156
|
-
"totalThoughts": 6,
|
|
157
|
-
"tokenBudget": 8192,
|
|
158
|
-
"tokensUsed": 128,
|
|
159
|
-
"ttlMs": 1800000,
|
|
160
|
-
"expiresAt": 1739356800000,
|
|
161
|
-
"createdAt": 1739356500000,
|
|
162
|
-
"updatedAt": 1739356505000,
|
|
163
|
-
"summary": "Session [8e2e2c7a-1234-4567-89ab-001122334455] at level [normal] with [1] thoughts."
|
|
164
|
-
}
|
|
165
|
-
}
|
|
166
|
-
```
|
|
115
|
+
**Returns:** A structured result with session metadata, thoughts, and token usage.
|
|
167
116
|
|
|
168
117
|
### Resources
|
|
169
118
|
|
|
170
|
-
| URI Pattern
|
|
171
|
-
|
|
|
172
|
-
| internal://instructions | Usage instructions for the MCP server.
|
|
173
|
-
| reasoning://sessions | List of active reasoning sessions
|
|
174
|
-
| reasoning://sessions/{sessionId} | Detailed view of a reasoning session.
|
|
175
|
-
| file:///cortex/sessions/{sessionId}/trace.md | Markdown trace of a reasoning session
|
|
176
|
-
| file:///cortex/sessions/{sessionId}/{thoughtName}.md | Markdown content of a single thought
|
|
119
|
+
| URI Pattern | Description | MIME Type |
|
|
120
|
+
| :----------------------------------------------------- | :------------------------------------- | :----------------- |
|
|
121
|
+
| `internal://instructions` | Usage instructions for the MCP server. | `text/markdown` |
|
|
122
|
+
| `reasoning://sessions` | List of active reasoning sessions. | `application/json` |
|
|
123
|
+
| `reasoning://sessions/{sessionId}` | Detailed view of a reasoning session. | `application/json` |
|
|
124
|
+
| `file:///cortex/sessions/{sessionId}/trace.md` | Markdown trace of a reasoning session. | `text/markdown` |
|
|
125
|
+
| `file:///cortex/sessions/{sessionId}/{thoughtName}.md` | Markdown content of a single thought. | `text/markdown` |
|
|
177
126
|
|
|
178
127
|
### Prompts
|
|
179
128
|
|
|
180
|
-
| Name
|
|
181
|
-
|
|
|
182
|
-
| reasoning.basic | query
|
|
183
|
-
| reasoning.normal | query
|
|
184
|
-
| reasoning.high | query
|
|
185
|
-
| reasoning.retry | query
|
|
186
|
-
| reasoning.continue | sessionId
|
|
187
|
-
| get-help | -
|
|
129
|
+
| Name | Arguments | Description |
|
|
130
|
+
| :------------------- | :---------------------------------------------- | :---------------------------------------- |
|
|
131
|
+
| `reasoning.basic` | `query`, `targetThoughts` | Prepare a basic-depth reasoning request. |
|
|
132
|
+
| `reasoning.normal` | `query`, `targetThoughts` | Prepare a normal-depth reasoning request. |
|
|
133
|
+
| `reasoning.high` | `query`, `targetThoughts` | Prepare a high-depth reasoning request. |
|
|
134
|
+
| `reasoning.retry` | `query`, `level`, `targetThoughts` | Retry a failed reasoning task. |
|
|
135
|
+
| `reasoning.continue` | `sessionId`, `query`, `level`, `targetThoughts` | Continue an existing reasoning session. |
|
|
136
|
+
| `get-help` | - | Return server usage instructions. |
|
|
188
137
|
|
|
189
138
|
### Tasks
|
|
190
139
|
|
|
191
|
-
Task-augmented tool calls are supported for `reasoning.think` with
|
|
192
|
-
|
|
193
|
-
- Call the tool as a task to receive a task id.
|
|
194
|
-
- Poll `tasks/get` and read results via `tasks/result`.
|
|
195
|
-
- Cancel with `tasks/cancel`.
|
|
196
|
-
- Use `runMode: "run_to_completion"` to consume multiple thought inputs in one task.
|
|
140
|
+
Task-augmented tool calls are supported for `reasoning.think`. Use `tools/call` with task support to run long-running reasoning sessions asynchronously.
|
|
197
141
|
|
|
198
142
|
## Configuration
|
|
199
143
|
|
|
200
|
-
###
|
|
201
|
-
|
|
202
|
-
| Mode | Description |
|
|
203
|
-
| ----- | ----------------------------- |
|
|
204
|
-
| stdio | The only supported transport. |
|
|
205
|
-
|
|
206
|
-
### Session Store Limits
|
|
144
|
+
### Environment Variables
|
|
207
145
|
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
|
211
|
-
|
|
|
212
|
-
| `
|
|
213
|
-
| `
|
|
214
|
-
| `CORTEX_MAX_TOTAL_TOKENS` | `500000` | Maximum aggregate approximate token footprint across sessions. |
|
|
215
|
-
| `CORTEX_MAX_ACTIVE_REASONING_TASKS` | `32` | Maximum concurrently running background reasoning tasks. |
|
|
146
|
+
| Variable | Description | Default |
|
|
147
|
+
| :---------------------------------- | :--------------------------------------------- | :----------------- |
|
|
148
|
+
| `CORTEX_SESSION_TTL_MS` | Session time-to-live in milliseconds. | `1800000` (30 min) |
|
|
149
|
+
| `CORTEX_MAX_SESSIONS` | Maximum active in-memory sessions. | `100` |
|
|
150
|
+
| `CORTEX_MAX_TOTAL_TOKENS` | Maximum aggregate token usage across sessions. | `500000` |
|
|
151
|
+
| `CORTEX_MAX_ACTIVE_REASONING_TASKS` | Maximum concurrent background tasks. | `32` |
|
|
216
152
|
|
|
217
153
|
## Development
|
|
218
154
|
|
|
219
|
-
Install dependencies:
|
|
220
|
-
|
|
221
155
|
```bash
|
|
156
|
+
# Install dependencies
|
|
222
157
|
npm install
|
|
223
|
-
```
|
|
224
158
|
|
|
225
|
-
|
|
159
|
+
# Build the server
|
|
160
|
+
npm run build
|
|
226
161
|
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
| clean | node scripts/tasks.mjs clean | Remove build artifacts. |
|
|
230
|
-
| build | node scripts/tasks.mjs build | Build the server to dist/. |
|
|
231
|
-
| dev | tsc --watch --preserveWatchOutput | Watch and compile TypeScript. |
|
|
232
|
-
| dev:run | node --env-file=.env --watch dist/index.js | Run the built server with auto-restart. |
|
|
233
|
-
| format | prettier --write . | Format the codebase. |
|
|
234
|
-
| type-check | node scripts/tasks.mjs type-check | Run TypeScript type checks. |
|
|
235
|
-
| lint | eslint . | Lint the codebase. |
|
|
236
|
-
| test | node scripts/tasks.mjs test | Build and run tests. |
|
|
237
|
-
| inspector | npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js ${workspaceFolder} | Launch MCP Inspector. |
|
|
162
|
+
# Run in development mode
|
|
163
|
+
npm run dev
|
|
238
164
|
|
|
239
|
-
|
|
165
|
+
# Run tests
|
|
166
|
+
npm run test
|
|
240
167
|
|
|
241
|
-
|
|
242
|
-
|
|
168
|
+
# Launch MCP Inspector
|
|
169
|
+
npm run inspector
|
|
243
170
|
```
|
|
244
171
|
|
|
245
|
-
## Build
|
|
246
|
-
|
|
247
|
-
The GitHub Actions workflow in `.github/workflows/release.yml` automates version bumps, testing, publishing to npm, MCP Registry, and Docker image publishing.
|
|
248
|
-
|
|
249
|
-
Docker support is included via the multi-stage `Dockerfile` and `docker-compose.yml`.
|
|
172
|
+
## Build & Release
|
|
250
173
|
|
|
251
|
-
|
|
174
|
+
The project uses GitHub Actions for CI/CD:
|
|
252
175
|
|
|
253
|
-
-
|
|
254
|
-
-
|
|
255
|
-
-
|
|
176
|
+
- **Release**: Bumps version, validates, tags, and creates a GitHub release.
|
|
177
|
+
- **Publish npm**: Publishes the package to npm.
|
|
178
|
+
- **Publish MCP**: Publishes the server to the MCP Registry.
|
|
179
|
+
- **Publish Docker**: Builds and pushes the Docker image to `ghcr.io`.
|
|
256
180
|
|
|
257
181
|
## License
|
|
258
182
|
|
|
@@ -9,5 +9,5 @@ interface ReasonOptions {
|
|
|
9
9
|
abortSignal?: AbortSignal;
|
|
10
10
|
onProgress?: (progress: number, total: number) => void | Promise<void>;
|
|
11
11
|
}
|
|
12
|
-
export declare function reason(query: string, level: ReasoningLevel, options?: ReasonOptions): Promise<Readonly<Session>>;
|
|
12
|
+
export declare function reason(query: string, level: ReasoningLevel | undefined, options?: ReasonOptions): Promise<Readonly<Session>>;
|
|
13
13
|
//# sourceMappingURL=reasoner.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reasoner.d.ts","sourceRoot":"","sources":["../../src/engine/reasoner.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAK/D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAsBlD,QAAA,MAAM,YAAY,cAIjB,CAAC;AAKF,OAAO,EAAE,YAAY,EAAE,CAAC;AAExB,UAAU,aAAa;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACxE;AAQD,wBAAsB,MAAM,CAC1B,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"reasoner.d.ts","sourceRoot":"","sources":["../../src/engine/reasoner.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAK/D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAsBlD,QAAA,MAAM,YAAY,cAIjB,CAAC;AAKF,OAAO,EAAE,YAAY,EAAE,CAAC;AAExB,UAAU,aAAa;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACxE;AAQD,wBAAsB,MAAM,CAC1B,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,cAAc,GAAG,SAAS,EACjC,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAkE5B"}
|
package/dist/engine/reasoner.js
CHANGED
|
@@ -27,8 +27,8 @@ export async function reason(query, level, options) {
|
|
|
27
27
|
throw new Error('thought is required: provide your reasoning content');
|
|
28
28
|
}
|
|
29
29
|
const { sessionId, targetThoughts, thought, abortSignal, onProgress } = options;
|
|
30
|
-
const
|
|
31
|
-
const
|
|
30
|
+
const session = resolveSession(level, sessionId, query, targetThoughts);
|
|
31
|
+
const config = LEVEL_CONFIGS[session.level];
|
|
32
32
|
const { totalThoughts } = session;
|
|
33
33
|
return runWithContext({ sessionId: session.id, ...(abortSignal ? { abortSignal } : {}) }, () => withSessionLock(session.id, async () => {
|
|
34
34
|
throwIfReasoningAborted(abortSignal);
|
|
@@ -103,21 +103,25 @@ function getSessionOrThrow(sessionId) {
|
|
|
103
103
|
function emitBudgetExhausted(data) {
|
|
104
104
|
engineEvents.emit('thought:budget-exhausted', data);
|
|
105
105
|
}
|
|
106
|
-
function resolveSession(level, sessionId, query,
|
|
106
|
+
function resolveSession(level, sessionId, query, targetThoughts) {
|
|
107
107
|
if (sessionId) {
|
|
108
108
|
const existing = sessionStore.get(sessionId);
|
|
109
109
|
if (!existing) {
|
|
110
110
|
throw new Error(`Session not found: ${sessionId}`);
|
|
111
111
|
}
|
|
112
|
-
if (existing.level !== level) {
|
|
113
|
-
|
|
112
|
+
if (level !== undefined && existing.level !== level) {
|
|
113
|
+
// Warning: ignoring provided level in favor of session level
|
|
114
114
|
}
|
|
115
115
|
if (targetThoughts !== undefined &&
|
|
116
116
|
targetThoughts !== existing.totalThoughts) {
|
|
117
|
-
throw new Error(`targetThoughts
|
|
117
|
+
throw new Error(`Cannot change targetThoughts on an existing session (current: ${String(existing.totalThoughts)}). Omit targetThoughts or pass ${String(existing.totalThoughts)}.`);
|
|
118
118
|
}
|
|
119
119
|
return existing;
|
|
120
120
|
}
|
|
121
|
+
if (level === undefined) {
|
|
122
|
+
throw new Error('level is required for new sessions');
|
|
123
|
+
}
|
|
124
|
+
const config = LEVEL_CONFIGS[level];
|
|
121
125
|
const totalThoughts = resolveThoughtCount(level, query, config, targetThoughts);
|
|
122
126
|
const session = sessionStore.create(level, totalThoughts);
|
|
123
127
|
engineEvents.emit('session:created', {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reasoner.js","sourceRoot":"","sources":["../../src/engine/reasoner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGjD,OAAO,EAAE,2BAA2B,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,sBAAsB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAC9C,MAAM,oBAAoB,GAAG,GAAG,CAAC;AACjC,MAAM,wBAAwB,GAAG,OAAO,CAAC;AAEzC,SAAS,mBAAmB,CAC1B,IAAY,EACZ,QAAgB,EAChB,OAAO,GAAG,CAAC;IAEX,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC9B,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACxC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,OAAO,EAAE,CAAC;QAClD,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,YAAY,GAAG,IAAI,YAAY,CACnC,mBAAmB,CAAC,uBAAuB,EAAE,sBAAsB,CAAC,EACpE,mBAAmB,CAAC,qBAAqB,EAAE,oBAAoB,CAAC,EAChE,mBAAmB,CAAC,yBAAyB,EAAE,wBAAwB,CAAC,CACzE,CAAC;AACF,MAAM,iBAAiB,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;AAEtD,MAAM,YAAY,GAAG,IAAI,GAAG,EAAyB,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,CAAC;AAgBxB,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,KAAa,EACb,
|
|
1
|
+
{"version":3,"file":"reasoner.js","sourceRoot":"","sources":["../../src/engine/reasoner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGjD,OAAO,EAAE,2BAA2B,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,sBAAsB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAC9C,MAAM,oBAAoB,GAAG,GAAG,CAAC;AACjC,MAAM,wBAAwB,GAAG,OAAO,CAAC;AAEzC,SAAS,mBAAmB,CAC1B,IAAY,EACZ,QAAgB,EAChB,OAAO,GAAG,CAAC;IAEX,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC9B,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACxC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,OAAO,EAAE,CAAC;QAClD,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,YAAY,GAAG,IAAI,YAAY,CACnC,mBAAmB,CAAC,uBAAuB,EAAE,sBAAsB,CAAC,EACpE,mBAAmB,CAAC,qBAAqB,EAAE,oBAAoB,CAAC,EAChE,mBAAmB,CAAC,yBAAyB,EAAE,wBAAwB,CAAC,CACzE,CAAC;AACF,MAAM,iBAAiB,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;AAEtD,MAAM,YAAY,GAAG,IAAI,GAAG,EAAyB,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,CAAC;AAgBxB,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,KAAa,EACb,KAAiC,EACjC,OAAuB;IAEvB,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;IACD,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,GACnE,OAAO,CAAC;IAEV,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC;IACxE,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;IAElC,OAAO,cAAc,CACnB,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAClE,GAAG,EAAE,CACH,eAAe,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,IAAI,EAAE;QACrC,uBAAuB,CAAC,WAAW,CAAC,CAAC;QAErC,MAAM,OAAO,GAAG,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC9C,IAAI,OAAO,CAAC,UAAU,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YAC7C,mBAAmB,CAAC;gBAClB,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,iBAAiB,EAAE,CAAC;gBACpB,iBAAiB,EAAE,aAAa;aACjC,CAAC,CAAC;YACH,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC1C,IAAI,SAAS,IAAI,aAAa,EAAE,CAAC;YAC/B,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,MAAM,WAAW,GAAG,OAAO,CAAC;QAE5B,MAAM,YAAY,GAAG,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;QACtE,YAAY,CAAC,IAAI,CAAC,eAAe,EAAE;YACjC,SAAS,EAAE,OAAO,CAAC,EAAE;YACrB,KAAK,EAAE,YAAY,CAAC,KAAK;YACzB,OAAO,EAAE,YAAY,CAAC,OAAO;SAC9B,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC9C,IAAI,OAAO,CAAC,UAAU,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YAC7C,mBAAmB,CAAC;gBAClB,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,iBAAiB,EAAE,YAAY,CAAC,KAAK,GAAG,CAAC;gBACzC,iBAAiB,EAAE,aAAa;aACjC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,IAAI,aAAa,EAAE,CAAC;YAC7C,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACzC,CAAC;QAED,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,UAAU,CAAC,YAAY,CAAC,KAAK,GAAG,CAAC,EAAE,aAAa,CAAC,CAAC;YACxD,uBAAuB,CAAC,WAAW,CAAC,CAAC;QACvC,CAAC;QAED,OAAO,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACvC,CAAC,CAAC,CACL,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,eAAe,CAC5B,SAAiB,EACjB,EAAoB;IAEpB,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAElE,IAAI,OAAiC,CAAC;IACtC,MAAM,IAAI,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QACzC,OAAO,GAAG,OAAO,CAAC;IACpB,CAAC,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IAC9C,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IAEzC,MAAM,QAAQ,CAAC;IACf,IAAI,CAAC;QACH,OAAO,MAAM,EAAE,EAAE,CAAC;IACpB,CAAC;YAAS,CAAC;QACT,OAAO,EAAE,EAAE,CAAC;QACZ,IAAI,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,WAAW,EAAE,CAAC;YAChD,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,SAAiB;IAC1C,MAAM,OAAO,GAAG,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC5C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,sBAAsB,SAAS,EAAE,CAAC,CAAC;IACrD,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,mBAAmB,CAAC,IAM5B;IACC,YAAY,CAAC,IAAI,CAAC,0BAA0B,EAAE,IAAI,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,cAAc,CACrB,KAAiC,EACjC,SAA6B,EAC7B,KAAa,EACb,cAAuB;IAEvB,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,sBAAsB,SAAS,EAAE,CAAC,CAAC;QACrD,CAAC;QACD,IAAI,KAAK,KAAK,SAAS,IAAI,QAAQ,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;YACpD,6DAA6D;QAC/D,CAAC;QACD,IACE,cAAc,KAAK,SAAS;YAC5B,cAAc,KAAK,QAAQ,CAAC,aAAa,EACzC,CAAC;YACD,MAAM,IAAI,KAAK,CACb,iEAAiE,MAAM,CACrE,QAAQ,CAAC,aAAa,CACvB,kCAAkC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG,CACrE,CAAC;QACJ,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACpC,MAAM,aAAa,GAAG,mBAAmB,CACvC,KAAK,EACL,KAAK,EACL,MAAM,EACN,cAAc,CACf,CAAC;IACF,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IAC1D,YAAY,CAAC,IAAI,CAAC,iBAAiB,EAAE;QACnC,SAAS,EAAE,OAAO,CAAC,EAAE;QACrB,KAAK;KACN,CAAC,CAAC;IACH,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,mBAAmB,CAC1B,KAAqB,EACrB,KAAa,EACb,MAAwD,EACxD,cAAuB;IAEvB,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;QACjC,2BAA2B,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;QACnD,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,IAAI,MAAM,CAAC,WAAW,KAAK,MAAM,CAAC,WAAW,EAAE,CAAC;QAC9C,OAAO,MAAM,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC/B,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;IAErD,MAAM,eAAe,GAAG,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAC7D,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,eAAe,GAAG,GAAG,CAAC,CAAC;IACvD,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,wBAAwB,CAAC,SAAS,CAAC,CAAC,CAAC;IAC1E,MAAM,QAAQ,GACZ,2FAA2F,CAAC;IAC9F,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACzD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,GAAG,cAAc,GAAG,YAAY,CAAC,CAAC;IAEvE,OAAO,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,cAAc,CAAC,SAAiB;IACvC,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,OAAO,CAAC,CAAC;IACX,CAAC;IAED,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,MAAM,QAAQ,IAAI,iBAAiB,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QAC5D,IAAI,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvC,KAAK,EAAE,CAAC;QACV,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,wBAAwB,CAAC,SAAiB;IACjD,MAAM,aAAa,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IAChD,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,aAAa,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC;IACpC,CAAC;IAED,MAAM,aAAa,GAAG,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC;IAChE,OAAO,aAAa,GAAG,IAAI,CAAC;AAC9B,CAAC;AAED,SAAS,uBAAuB,CAAC,MAAoB;IACnD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO;IACT,CAAC;IACD,IAAI,CAAC;QACH,MAAM,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;AACH,CAAC"}
|
package/dist/instructions.md
CHANGED
|
@@ -30,9 +30,6 @@ These instructions are available as a resource (internal://instructions) or prom
|
|
|
30
30
|
- `reasoning://sessions/{sessionId}`: Inspect a specific session's thoughts and metadata (JSON). Supports auto-completion on `sessionId`.
|
|
31
31
|
- `file:///cortex/sessions/{sessionId}/trace.md`: Full Markdown trace of a session. Supports auto-completion on `sessionId`.
|
|
32
32
|
- `file:///cortex/sessions/{sessionId}/{thoughtName}.md`: Markdown content of a single thought (e.g., `Thought-1.md`). Supports auto-completion on `sessionId` and `thoughtName`.
|
|
33
|
-
|
|
34
|
-
### Resource Subscriptions
|
|
35
|
-
|
|
36
33
|
- The server supports `resources/subscribe` for real-time change notifications on individual resources.
|
|
37
34
|
- Subscribe to `reasoning://sessions/{sessionId}` to receive `notifications/resources/updated` when thoughts are added, revised, or status changes.
|
|
38
35
|
- Subscribe to `reasoning://sessions` to receive aggregate updates as session content and statuses evolve.
|
|
@@ -55,19 +52,19 @@ These instructions are available as a resource (internal://instructions) or prom
|
|
|
55
52
|
|
|
56
53
|
## THE "GOLDEN PATH" WORKFLOWS (CRITICAL)
|
|
57
54
|
|
|
58
|
-
### WORKFLOW A: Sequential Reasoning
|
|
55
|
+
### WORKFLOW A: Sequential Reasoning (Most Common)
|
|
59
56
|
|
|
60
57
|
1. Call `reasoning.think` with `{ query: "...", level: "basic", thought: "Your detailed reasoning for step 1..." }`.
|
|
61
|
-
2. Read
|
|
62
|
-
3.
|
|
63
|
-
4.
|
|
64
|
-
NOTE:
|
|
58
|
+
2. Read the response — note the `sessionId` and `remainingThoughts` fields.
|
|
59
|
+
3. **You MUST continue**: Call again with `{ sessionId: "<from response>", level: "<same level>", thought: "Your next reasoning step..." }`.
|
|
60
|
+
4. Repeat step 3 until the response shows `status: "completed"` or `remainingThoughts: 0`.
|
|
61
|
+
NOTE: The `summary` field contains the exact continuation call you should make next.
|
|
65
62
|
|
|
66
63
|
### WORKFLOW B: Multi-Turn Reasoning (Session Continuation)
|
|
67
64
|
|
|
68
65
|
1. Call `reasoning.think` with `{ query: "initial question", level: "normal", thought: "Your first reasoning step..." }` — note the returned `sessionId`.
|
|
69
|
-
2. Call `reasoning.think` with `{
|
|
70
|
-
3. Repeat until `
|
|
66
|
+
2. Call `reasoning.think` with `{ sessionId: "<id>", level: "normal", thought: "Your next reasoning step..." }` (optional: add `query` for follow-up context).
|
|
67
|
+
3. Repeat until `status: "completed"` or `remainingThoughts: 0`, then read `reasoning://sessions/{sessionId}` for the full chain.
|
|
71
68
|
NOTE: The `level` MUST match the original session level. Mismatches return `E_SESSION_LEVEL_MISMATCH`.
|
|
72
69
|
|
|
73
70
|
### WORKFLOW C: Controlled Depth Reasoning
|
|
@@ -104,8 +101,10 @@ These instructions are available as a resource (internal://instructions) or prom
|
|
|
104
101
|
- `thoughts` (array of string, optional): Additional thought inputs consumed in order when `runMode` is `run_to_completion`.
|
|
105
102
|
- `targetThoughts` (int, 1–25, optional): Override automatic step count. Must fit within the level range.
|
|
106
103
|
- `sessionId` (string, 1–128 chars, optional): Continue an existing session. Level must match.
|
|
107
|
-
- Output: `{ ok, result: { sessionId, level, thoughts[], generatedThoughts, requestedThoughts, totalThoughts, tokenBudget, tokensUsed, ttlMs, expiresAt, createdAt, updatedAt, summary } }`
|
|
104
|
+
- Output: `{ ok, result: { sessionId, level, status, thoughts[], generatedThoughts, requestedThoughts, totalThoughts, remainingThoughts, tokenBudget, tokensUsed, ttlMs, expiresAt, createdAt, updatedAt, summary } }`
|
|
108
105
|
- Side effects: Creates or modifies an in-memory session. Sessions expire after 30 minutes of inactivity.
|
|
106
|
+
- Gotcha: When `status` is `"active"`, the `summary` field contains the exact next call you should make — follow it to continue the session.
|
|
107
|
+
- Gotcha: `remainingThoughts` tells you how many more calls are needed. When it reaches 0, the session is complete.
|
|
109
108
|
- Gotcha: `runMode="step"` appends one thought per call. `runMode="run_to_completion"` can append multiple thoughts in one call using `thought` + `thoughts[]`.
|
|
110
109
|
- Gotcha: The `thought` content is stored verbatim — the trace shows exactly what you write. Write thorough, structured reasoning for useful traces.
|
|
111
110
|
- Gotcha: `requestedThoughts` is the effective requested count for this run: it equals `targetThoughts` when provided, otherwise `totalThoughts`.
|
|
@@ -147,5 +146,3 @@ These instructions are available as a resource (internal://instructions) or prom
|
|
|
147
146
|
- `E_INVALID_RUN_MODE_ARGS`: Invalid `runMode` argument combination (for example, missing `targetThoughts` when starting a new run-to-completion session).
|
|
148
147
|
- `E_ABORTED`: Reasoning was cancelled via abort signal or task cancellation. Retry with a new request if needed.
|
|
149
148
|
- `E_REASONING`: Unexpected engine error. Check the error `message` field for details and retry.
|
|
150
|
-
|
|
151
|
-
---
|
package/dist/lib/formatting.d.ts
CHANGED
|
@@ -1,4 +1,31 @@
|
|
|
1
|
-
import type { Session } from './types.js';
|
|
1
|
+
import type { Session, Thought } from './types.js';
|
|
2
|
+
export interface PinnedSection {
|
|
3
|
+
readonly title: string;
|
|
4
|
+
readonly content: string;
|
|
5
|
+
readonly thoughtIndex: number;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Extract pinned sections from thought content.
|
|
9
|
+
*
|
|
10
|
+
* Syntax:
|
|
11
|
+
* ```
|
|
12
|
+
* <!-- pin: Title -->
|
|
13
|
+
* Content to pin…
|
|
14
|
+
* <!-- /pin -->
|
|
15
|
+
* ```
|
|
16
|
+
*
|
|
17
|
+
* If the same title appears in multiple thoughts the **latest** one wins.
|
|
18
|
+
*/
|
|
19
|
+
export declare function extractPinnedSections(thoughts: readonly Thought[]): readonly PinnedSection[];
|
|
20
|
+
/**
|
|
21
|
+
* Format a session's thoughts as Markdown.
|
|
22
|
+
*
|
|
23
|
+
* When called without a `range` (full trace), the output includes the
|
|
24
|
+
* trace header plus any pinned sections extracted from thought content.
|
|
25
|
+
*
|
|
26
|
+
* When called with a `range`, only the requested thought slice is returned
|
|
27
|
+
* (no header, no enhanced sections).
|
|
28
|
+
*/
|
|
2
29
|
export declare function formatThoughtsToMarkdown(session: Readonly<Session>, range?: {
|
|
3
30
|
start: number;
|
|
4
31
|
end: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatting.d.ts","sourceRoot":"","sources":["../../src/lib/formatting.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"formatting.d.ts","sourceRoot":"","sources":["../../src/lib/formatting.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAMnD,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC/B;AASD;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,SAAS,OAAO,EAAE,GAC3B,SAAS,aAAa,EAAE,CAwC1B;AAgCD;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,EAC1B,KAAK,CAAC,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GACrC,MAAM,CAuCR"}
|
package/dist/lib/formatting.js
CHANGED
|
@@ -1,8 +1,84 @@
|
|
|
1
|
+
// ---------------------------------------------------------------------------
|
|
2
|
+
// Extraction helpers
|
|
3
|
+
// ---------------------------------------------------------------------------
|
|
4
|
+
const PIN_START = '<!-- pin:';
|
|
5
|
+
const PIN_END = '<!-- /pin -->';
|
|
6
|
+
/**
|
|
7
|
+
* Extract pinned sections from thought content.
|
|
8
|
+
*
|
|
9
|
+
* Syntax:
|
|
10
|
+
* ```
|
|
11
|
+
* <!-- pin: Title -->
|
|
12
|
+
* Content to pin…
|
|
13
|
+
* <!-- /pin -->
|
|
14
|
+
* ```
|
|
15
|
+
*
|
|
16
|
+
* If the same title appears in multiple thoughts the **latest** one wins.
|
|
17
|
+
*/
|
|
18
|
+
export function extractPinnedSections(thoughts) {
|
|
19
|
+
const byTitle = new Map();
|
|
20
|
+
for (const thought of thoughts) {
|
|
21
|
+
let searchFrom = 0;
|
|
22
|
+
while (searchFrom < thought.content.length) {
|
|
23
|
+
const startIdx = thought.content.indexOf(PIN_START, searchFrom);
|
|
24
|
+
if (startIdx === -1) {
|
|
25
|
+
break;
|
|
26
|
+
}
|
|
27
|
+
const arrowIdx = thought.content.indexOf('-->', startIdx + PIN_START.length);
|
|
28
|
+
if (arrowIdx === -1) {
|
|
29
|
+
break;
|
|
30
|
+
}
|
|
31
|
+
const title = thought.content
|
|
32
|
+
.slice(startIdx + PIN_START.length, arrowIdx)
|
|
33
|
+
.trim();
|
|
34
|
+
const contentStart = arrowIdx + 3;
|
|
35
|
+
const endIdx = thought.content.indexOf(PIN_END, contentStart);
|
|
36
|
+
if (endIdx === -1) {
|
|
37
|
+
break;
|
|
38
|
+
}
|
|
39
|
+
const content = thought.content.slice(contentStart, endIdx).trim();
|
|
40
|
+
searchFrom = endIdx + PIN_END.length;
|
|
41
|
+
if (title.length > 0) {
|
|
42
|
+
byTitle.set(title, { title, content, thoughtIndex: thought.index });
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
return [...byTitle.values()];
|
|
47
|
+
}
|
|
48
|
+
// ---------------------------------------------------------------------------
|
|
49
|
+
// Rendering helpers
|
|
50
|
+
// ---------------------------------------------------------------------------
|
|
51
|
+
function renderPinnedSections(sections) {
|
|
52
|
+
if (sections.length === 0) {
|
|
53
|
+
return '';
|
|
54
|
+
}
|
|
55
|
+
const lines = ['## 📌 Pinned', ''];
|
|
56
|
+
for (const pin of sections) {
|
|
57
|
+
lines.push(`### ${pin.title} *(Thought ${String(pin.thoughtIndex + 1)})*`);
|
|
58
|
+
if (pin.content.length > 0) {
|
|
59
|
+
lines.push('', pin.content);
|
|
60
|
+
}
|
|
61
|
+
lines.push('');
|
|
62
|
+
}
|
|
63
|
+
return lines.join('\n').trimEnd();
|
|
64
|
+
}
|
|
65
|
+
// ---------------------------------------------------------------------------
|
|
66
|
+
// Core formatting
|
|
67
|
+
// ---------------------------------------------------------------------------
|
|
1
68
|
function formatThoughtHeading(thought) {
|
|
2
69
|
const thoughtNumber = thought.index + 1;
|
|
3
70
|
const suffix = thought.revision > 0 ? ' [Revised]' : '';
|
|
4
71
|
return `𖦹 Thought [${String(thoughtNumber)}]${suffix}`;
|
|
5
72
|
}
|
|
73
|
+
/**
|
|
74
|
+
* Format a session's thoughts as Markdown.
|
|
75
|
+
*
|
|
76
|
+
* When called without a `range` (full trace), the output includes the
|
|
77
|
+
* trace header plus any pinned sections extracted from thought content.
|
|
78
|
+
*
|
|
79
|
+
* When called with a `range`, only the requested thought slice is returned
|
|
80
|
+
* (no header, no enhanced sections).
|
|
81
|
+
*/
|
|
6
82
|
export function formatThoughtsToMarkdown(session, range) {
|
|
7
83
|
const { thoughts: allThoughts } = session;
|
|
8
84
|
const isFullTrace = range === undefined;
|
|
@@ -16,10 +92,20 @@ export function formatThoughtsToMarkdown(session, range) {
|
|
|
16
92
|
thoughts = allThoughts;
|
|
17
93
|
}
|
|
18
94
|
const sections = [];
|
|
95
|
+
// --- Header ---
|
|
19
96
|
if (isFullTrace && thoughts.length > 0) {
|
|
20
97
|
sections.push(`# Reasoning Trace — [${session.level}]\n` +
|
|
21
98
|
`> Session [${session.id}] · [${String(allThoughts.length)}] thoughts`);
|
|
22
99
|
}
|
|
100
|
+
// --- Pinned sections (full trace only) ---
|
|
101
|
+
if (isFullTrace && thoughts.length > 0) {
|
|
102
|
+
const pinned = extractPinnedSections(thoughts);
|
|
103
|
+
const pinnedMd = renderPinnedSections(pinned);
|
|
104
|
+
if (pinnedMd.length > 0) {
|
|
105
|
+
sections.push(pinnedMd);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
// --- Thought narrative ---
|
|
23
109
|
for (const thought of thoughts) {
|
|
24
110
|
const heading = formatThoughtHeading(thought);
|
|
25
111
|
sections.push(`${heading}\n\n${thought.content}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatting.js","sourceRoot":"","sources":["../../src/lib/formatting.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"formatting.js","sourceRoot":"","sources":["../../src/lib/formatting.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/validators.js
CHANGED
|
@@ -14,7 +14,7 @@ export function getTargetThoughtsError(level, targetThoughts) {
|
|
|
14
14
|
}
|
|
15
15
|
const { minThoughts, maxThoughts } = getThoughtBounds(level);
|
|
16
16
|
if (targetThoughts < minThoughts || targetThoughts > maxThoughts) {
|
|
17
|
-
return `targetThoughts must be between ${String(minThoughts)} and ${String(maxThoughts)} for
|
|
17
|
+
return `targetThoughts must be between ${String(minThoughts)} and ${String(maxThoughts)} for level "${level}" (received ${String(targetThoughts)})`;
|
|
18
18
|
}
|
|
19
19
|
return undefined;
|
|
20
20
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/lib/validators.ts"],"names":[],"mappings":"AAEA,8DAA8D;AAC9D,MAAM,cAAc,GAAyD;IAC3E,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IACzB,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE;IAC3B,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;CAC3B,CAAC;AAEF,MAAM,UAAU,gBAAgB,CAAC,KAAqB;IAIpD,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IAC3C,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,KAAqB,EACrB,cAAsB;IAEtB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,CAAC;QACtC,OAAO,mCAAmC,CAAC;IAC7C,CAAC;IAED,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC7D,IAAI,cAAc,GAAG,WAAW,IAAI,cAAc,GAAG,WAAW,EAAE,CAAC;QACjE,OAAO,kCAAkC,MAAM,CAAC,WAAW,CAAC,QAAQ,MAAM,CAAC,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/lib/validators.ts"],"names":[],"mappings":"AAEA,8DAA8D;AAC9D,MAAM,cAAc,GAAyD;IAC3E,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IACzB,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE;IAC3B,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;CAC3B,CAAC;AAEF,MAAM,UAAU,gBAAgB,CAAC,KAAqB;IAIpD,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IAC3C,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,KAAqB,EACrB,cAAsB;IAEtB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,CAAC;QACtC,OAAO,mCAAmC,CAAC;IAC7C,CAAC;IAED,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC7D,IAAI,cAAc,GAAG,WAAW,IAAI,cAAc,GAAG,WAAW,EAAE,CAAC;QACjE,OAAO,kCAAkC,MAAM,CAAC,WAAW,CAAC,QAAQ,MAAM,CAAC,WAAW,CAAC,eAAe,KAAK,eAAe,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC;IACtJ,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
package/dist/schemas/inputs.d.ts
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
export declare const ReasoningThinkInputSchema: z.ZodObject<{
|
|
3
3
|
query: z.ZodOptional<z.ZodString>;
|
|
4
|
-
level: z.ZodEnum<{
|
|
4
|
+
level: z.ZodOptional<z.ZodEnum<{
|
|
5
5
|
basic: "basic";
|
|
6
6
|
normal: "normal";
|
|
7
7
|
high: "high";
|
|
8
|
-
}
|
|
8
|
+
}>>;
|
|
9
9
|
targetThoughts: z.ZodOptional<z.ZodNumber>;
|
|
10
10
|
sessionId: z.ZodOptional<z.ZodString>;
|
|
11
11
|
runMode: z.ZodOptional<z.ZodEnum<{
|
|
12
12
|
step: "step";
|
|
13
13
|
run_to_completion: "run_to_completion";
|
|
14
14
|
}>>;
|
|
15
|
-
thought: z.ZodString
|
|
15
|
+
thought: z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>;
|
|
16
16
|
thoughts: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
17
17
|
}, z.core.$strict>;
|
|
18
18
|
export type ReasoningThinkInput = z.infer<typeof ReasoningThinkInputSchema>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inputs.d.ts","sourceRoot":"","sources":["../../src/schemas/inputs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"inputs.d.ts","sourceRoot":"","sources":["../../src/schemas/inputs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;kBAmHlC,CAAC;AAEL,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC"}
|
package/dist/schemas/inputs.js
CHANGED
|
@@ -10,35 +10,38 @@ export const ReasoningThinkInputSchema = z
|
|
|
10
10
|
.describe('The question or problem to reason about'),
|
|
11
11
|
level: z
|
|
12
12
|
.enum(['basic', 'normal', 'high'])
|
|
13
|
-
.
|
|
13
|
+
.optional()
|
|
14
|
+
.describe('Reasoning depth level (required for new sessions, optional for continuing)'),
|
|
14
15
|
targetThoughts: z
|
|
15
16
|
.number()
|
|
16
17
|
.int()
|
|
17
18
|
.min(1)
|
|
18
19
|
.optional()
|
|
19
|
-
.describe('Optional explicit thought count. Must fit the
|
|
20
|
+
.describe('Optional explicit thought count. Must fit the level range: basic 3–5, normal 6–10, high 15–25.'),
|
|
20
21
|
sessionId: z
|
|
21
22
|
.string()
|
|
22
23
|
.min(1)
|
|
23
24
|
.max(128)
|
|
24
25
|
.optional()
|
|
25
|
-
.describe('
|
|
26
|
+
.describe('Session ID to continue. Must use the same level as the original session.'),
|
|
26
27
|
runMode: z
|
|
27
28
|
.enum(['step', 'run_to_completion'])
|
|
28
29
|
.optional()
|
|
29
|
-
.describe('Execution mode. "step" appends a single thought. "run_to_completion" consumes all supplied thought inputs in one request.'),
|
|
30
|
+
.describe('Execution mode (default: "step"). "step" appends a single thought per call. "run_to_completion" consumes all supplied thought inputs in one request.'),
|
|
30
31
|
thought: z
|
|
31
|
-
.
|
|
32
|
-
.min(1)
|
|
33
|
-
.max(100000)
|
|
32
|
+
.union([
|
|
33
|
+
z.string().min(1).max(100000),
|
|
34
|
+
z.array(z.string().min(1).max(100000)).min(1).max(25),
|
|
35
|
+
])
|
|
34
36
|
.describe('Your full reasoning content for this step. ' +
|
|
35
37
|
'The server stores this text verbatim as the thought in the session trace. ' +
|
|
36
|
-
'Write your complete analysis, observations, and conclusions here — this is what appears in trace.md.'
|
|
38
|
+
'Write your complete analysis, observations, and conclusions here — this is what appears in trace.md. ' +
|
|
39
|
+
'Can be a single string or an array of strings (for batch execution).'),
|
|
37
40
|
thoughts: z
|
|
38
41
|
.array(z.string().min(1).max(100000))
|
|
39
42
|
.max(25)
|
|
40
43
|
.optional()
|
|
41
|
-
.describe('Optional additional thought inputs
|
|
44
|
+
.describe('(Deprecated) Optional additional thought inputs. Use "thought" as an array instead.'),
|
|
42
45
|
})
|
|
43
46
|
.superRefine((data, ctx) => {
|
|
44
47
|
const runMode = data.runMode ?? 'step';
|
|
@@ -49,6 +52,13 @@ export const ReasoningThinkInputSchema = z
|
|
|
49
52
|
path: ['query'],
|
|
50
53
|
});
|
|
51
54
|
}
|
|
55
|
+
if (data.sessionId === undefined && data.level === undefined) {
|
|
56
|
+
ctx.addIssue({
|
|
57
|
+
code: 'custom',
|
|
58
|
+
message: 'level is required when sessionId is not provided',
|
|
59
|
+
path: ['level'],
|
|
60
|
+
});
|
|
61
|
+
}
|
|
52
62
|
if (runMode === 'run_to_completion' &&
|
|
53
63
|
data.sessionId === undefined &&
|
|
54
64
|
data.targetThoughts === undefined) {
|
|
@@ -58,6 +68,13 @@ export const ReasoningThinkInputSchema = z
|
|
|
58
68
|
path: ['targetThoughts'],
|
|
59
69
|
});
|
|
60
70
|
}
|
|
71
|
+
if (runMode === 'step' && Array.isArray(data.thought)) {
|
|
72
|
+
ctx.addIssue({
|
|
73
|
+
code: 'custom',
|
|
74
|
+
message: 'thought must be a string when runMode is "step"',
|
|
75
|
+
path: ['thought'],
|
|
76
|
+
});
|
|
77
|
+
}
|
|
61
78
|
if (runMode === 'step' && data.thoughts !== undefined) {
|
|
62
79
|
ctx.addIssue({
|
|
63
80
|
code: 'custom',
|
|
@@ -65,7 +82,7 @@ export const ReasoningThinkInputSchema = z
|
|
|
65
82
|
path: ['thoughts'],
|
|
66
83
|
});
|
|
67
84
|
}
|
|
68
|
-
if (data.targetThoughts === undefined) {
|
|
85
|
+
if (data.targetThoughts === undefined || data.level === undefined) {
|
|
69
86
|
return;
|
|
70
87
|
}
|
|
71
88
|
const error = getTargetThoughtsError(data.level, data.targetThoughts);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inputs.js","sourceRoot":"","sources":["../../src/schemas/inputs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC;KACvC,YAAY,CAAC;IACZ,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,KAAK,CAAC;SACV,QAAQ,EAAE;SACV,QAAQ,CAAC,yCAAyC,CAAC;IACtD,KAAK,EAAE,CAAC;SACL,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;SACjC,QAAQ,
|
|
1
|
+
{"version":3,"file":"inputs.js","sourceRoot":"","sources":["../../src/schemas/inputs.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,38 @@ export declare const DefaultOutputSchema: z.ZodObject<{
|
|
|
7
7
|
message: z.ZodString;
|
|
8
8
|
}, z.core.$strict>>;
|
|
9
9
|
}, z.core.$strict>;
|
|
10
|
+
declare const ReasoningThinkSuccessSchema: z.ZodObject<{
|
|
11
|
+
ok: z.ZodLiteral<true>;
|
|
12
|
+
result: z.ZodObject<{
|
|
13
|
+
sessionId: z.ZodString;
|
|
14
|
+
level: z.ZodEnum<{
|
|
15
|
+
basic: "basic";
|
|
16
|
+
normal: "normal";
|
|
17
|
+
high: "high";
|
|
18
|
+
}>;
|
|
19
|
+
status: z.ZodEnum<{
|
|
20
|
+
active: "active";
|
|
21
|
+
completed: "completed";
|
|
22
|
+
cancelled: "cancelled";
|
|
23
|
+
}>;
|
|
24
|
+
thoughts: z.ZodArray<z.ZodObject<{
|
|
25
|
+
index: z.ZodNumber;
|
|
26
|
+
content: z.ZodString;
|
|
27
|
+
revision: z.ZodNumber;
|
|
28
|
+
}, z.core.$strict>>;
|
|
29
|
+
generatedThoughts: z.ZodNumber;
|
|
30
|
+
requestedThoughts: z.ZodNumber;
|
|
31
|
+
totalThoughts: z.ZodNumber;
|
|
32
|
+
tokenBudget: z.ZodNumber;
|
|
33
|
+
tokensUsed: z.ZodNumber;
|
|
34
|
+
ttlMs: z.ZodNumber;
|
|
35
|
+
expiresAt: z.ZodNumber;
|
|
36
|
+
createdAt: z.ZodNumber;
|
|
37
|
+
updatedAt: z.ZodNumber;
|
|
38
|
+
remainingThoughts: z.ZodNumber;
|
|
39
|
+
summary: z.ZodString;
|
|
40
|
+
}, z.core.$strict>;
|
|
41
|
+
}, z.core.$strict>;
|
|
10
42
|
export declare const ReasoningThinkResultSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
11
43
|
ok: z.ZodLiteral<true>;
|
|
12
44
|
result: z.ZodObject<{
|
|
@@ -35,6 +67,7 @@ export declare const ReasoningThinkResultSchema: z.ZodDiscriminatedUnion<[z.ZodO
|
|
|
35
67
|
expiresAt: z.ZodNumber;
|
|
36
68
|
createdAt: z.ZodNumber;
|
|
37
69
|
updatedAt: z.ZodNumber;
|
|
70
|
+
remainingThoughts: z.ZodNumber;
|
|
38
71
|
summary: z.ZodString;
|
|
39
72
|
}, z.core.$strict>;
|
|
40
73
|
}, z.core.$strict>, z.ZodObject<{
|
|
@@ -76,6 +109,7 @@ export declare const ReasoningThinkToolOutputSchema: z.ZodObject<{
|
|
|
76
109
|
expiresAt: z.ZodNumber;
|
|
77
110
|
createdAt: z.ZodNumber;
|
|
78
111
|
updatedAt: z.ZodNumber;
|
|
112
|
+
remainingThoughts: z.ZodNumber;
|
|
79
113
|
summary: z.ZodString;
|
|
80
114
|
}, z.core.$strict>>;
|
|
81
115
|
error: z.ZodOptional<z.ZodObject<{
|
|
@@ -83,4 +117,6 @@ export declare const ReasoningThinkToolOutputSchema: z.ZodObject<{
|
|
|
83
117
|
message: z.ZodString;
|
|
84
118
|
}, z.core.$strict>>;
|
|
85
119
|
}, z.core.$strict>;
|
|
120
|
+
export type ReasoningThinkSuccess = z.infer<typeof ReasoningThinkSuccessSchema>;
|
|
121
|
+
export {};
|
|
86
122
|
//# sourceMappingURL=outputs.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"outputs.d.ts","sourceRoot":"","sources":["../../src/schemas/outputs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,mBAAmB;;;;;;;kBAS9B,CAAC;
|
|
1
|
+
{"version":3,"file":"outputs.d.ts","sourceRoot":"","sources":["../../src/schemas/outputs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,mBAAmB;;;;;;;kBAS9B,CAAC;AAEH,QAAA,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAyC/B,CAAC;AAUH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BAGrC,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBASzC,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC"}
|
package/dist/schemas/outputs.js
CHANGED
|
@@ -33,7 +33,12 @@ const ReasoningThinkSuccessSchema = z.strictObject({
|
|
|
33
33
|
expiresAt: z.number(),
|
|
34
34
|
createdAt: z.number(),
|
|
35
35
|
updatedAt: z.number(),
|
|
36
|
-
|
|
36
|
+
remainingThoughts: z
|
|
37
|
+
.number()
|
|
38
|
+
.describe('Number of thoughts remaining before the session reaches totalThoughts'),
|
|
39
|
+
summary: z
|
|
40
|
+
.string()
|
|
41
|
+
.describe('Actionable next-step instruction when active, or completion status when done'),
|
|
37
42
|
}),
|
|
38
43
|
});
|
|
39
44
|
const ReasoningThinkErrorSchema = z.strictObject({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"outputs.js","sourceRoot":"","sources":["../../src/schemas/outputs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,YAAY,CAAC;IAChD,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE;IACf,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC9B,KAAK,EAAE,CAAC;SACL,YAAY,CAAC;QACZ,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;KACpB,CAAC;SACD,QAAQ,EAAE;CACd,CAAC,CAAC;AAEH,MAAM,2BAA2B,GAAG,CAAC,CAAC,YAAY,CAAC;IACjD,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACnB,MAAM,EAAE,CAAC,CAAC,YAAY,CAAC;QACrB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC1C,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;QACpD,QAAQ,EAAE,CAAC,CAAC,KAAK,CACf,CAAC,CAAC,YAAY,CAAC;YACb,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;YACjB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;YACnB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;SACrB,CAAC,CACH;QACD,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE;QAC7B,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE;QAC7B,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;QACzB,WAAW,EAAE,CAAC;aACX,MAAM,EAAE;aACR,QAAQ,CACP,mEAAmE,CACpE;QACH,UAAU,EAAE,CAAC;aACV,MAAM,EAAE;aACR,QAAQ,CACP,kEAAkE,CACnE;QACH,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;QACjB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,
|
|
1
|
+
{"version":3,"file":"outputs.js","sourceRoot":"","sources":["../../src/schemas/outputs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,YAAY,CAAC;IAChD,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE;IACf,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC9B,KAAK,EAAE,CAAC;SACL,YAAY,CAAC;QACZ,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;KACpB,CAAC;SACD,QAAQ,EAAE;CACd,CAAC,CAAC;AAEH,MAAM,2BAA2B,GAAG,CAAC,CAAC,YAAY,CAAC;IACjD,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACnB,MAAM,EAAE,CAAC,CAAC,YAAY,CAAC;QACrB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC1C,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;QACpD,QAAQ,EAAE,CAAC,CAAC,KAAK,CACf,CAAC,CAAC,YAAY,CAAC;YACb,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;YACjB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;YACnB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;SACrB,CAAC,CACH;QACD,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE;QAC7B,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE;QAC7B,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;QACzB,WAAW,EAAE,CAAC;aACX,MAAM,EAAE;aACR,QAAQ,CACP,mEAAmE,CACpE;QACH,UAAU,EAAE,CAAC;aACV,MAAM,EAAE;aACR,QAAQ,CACP,kEAAkE,CACnE;QACH,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;QACjB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,iBAAiB,EAAE,CAAC;aACjB,MAAM,EAAE;aACR,QAAQ,CACP,uEAAuE,CACxE;QACH,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,QAAQ,CACP,8EAA8E,CAC/E;KACJ,CAAC;CACH,CAAC,CAAC;AAEH,MAAM,yBAAyB,GAAG,CAAC,CAAC,YAAY,CAAC;IAC/C,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;IACpB,KAAK,EAAE,CAAC,CAAC,YAAY,CAAC;QACpB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;KACpB,CAAC;CACH,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,kBAAkB,CAAC,IAAI,EAAE;IACnE,2BAA2B;IAC3B,yBAAyB;CAC1B,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,YAAY,CAAC;IAC3D,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE;IACf,MAAM,EAAE,2BAA2B,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE;IAC3D,KAAK,EAAE,CAAC;SACL,YAAY,CAAC;QACZ,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;KACpB,CAAC;SACD,QAAQ,EAAE;CACd,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reasoning-think.d.ts","sourceRoot":"","sources":["../../src/tools/reasoning-think.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAmBzE,OAAO,KAAK,EACV,QAAQ,EAIT,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"reasoning-think.d.ts","sourceRoot":"","sources":["../../src/tools/reasoning-think.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAmBzE,OAAO,KAAK,EACV,QAAQ,EAIT,MAAM,iBAAiB,CAAC;AAytBzB,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,SAAS,EACjB,QAAQ,CAAC,EAAE,QAAQ,GAClB,IAAI,CA2FN"}
|
|
@@ -127,7 +127,8 @@ function mapReasoningErrorCode(message) {
|
|
|
127
127
|
message === 'Reasoning task cancelled') {
|
|
128
128
|
return 'E_ABORTED';
|
|
129
129
|
}
|
|
130
|
-
if (message.startsWith('targetThoughts must be')
|
|
130
|
+
if (message.startsWith('targetThoughts must be') ||
|
|
131
|
+
message.startsWith('Cannot change targetThoughts')) {
|
|
131
132
|
return 'E_INVALID_THOUGHT_COUNT';
|
|
132
133
|
}
|
|
133
134
|
if (message.startsWith('Session not found:')) {
|
|
@@ -157,7 +158,10 @@ function resolveRunMode(params) {
|
|
|
157
158
|
return params.runMode ?? 'step';
|
|
158
159
|
}
|
|
159
160
|
function buildThoughtInputs(params) {
|
|
160
|
-
|
|
161
|
+
const primary = Array.isArray(params.thought)
|
|
162
|
+
? params.thought
|
|
163
|
+
: [params.thought];
|
|
164
|
+
return [...primary, ...(params.thoughts ?? [])];
|
|
161
165
|
}
|
|
162
166
|
function getStartingThoughtCount(sessionId) {
|
|
163
167
|
if (sessionId === undefined) {
|
|
@@ -203,6 +207,7 @@ function buildStructuredResult(session, generatedThoughts, targetThoughts) {
|
|
|
203
207
|
const ttlMs = sessionStore.getTtlMs();
|
|
204
208
|
const expiresAt = sessionStore.getExpiresAt(session.id) ?? session.updatedAt + ttlMs;
|
|
205
209
|
const requestedThoughts = targetThoughts ?? session.totalThoughts;
|
|
210
|
+
const remainingThoughts = Math.max(0, session.totalThoughts - session.thoughts.length);
|
|
206
211
|
return {
|
|
207
212
|
ok: true,
|
|
208
213
|
result: {
|
|
@@ -213,16 +218,27 @@ function buildStructuredResult(session, generatedThoughts, targetThoughts) {
|
|
|
213
218
|
generatedThoughts,
|
|
214
219
|
requestedThoughts,
|
|
215
220
|
totalThoughts: session.totalThoughts,
|
|
221
|
+
remainingThoughts,
|
|
216
222
|
tokenBudget: session.tokenBudget,
|
|
217
223
|
tokensUsed: session.tokensUsed,
|
|
218
224
|
ttlMs,
|
|
219
225
|
expiresAt,
|
|
220
226
|
createdAt: session.createdAt,
|
|
221
227
|
updatedAt: session.updatedAt,
|
|
222
|
-
summary:
|
|
228
|
+
summary: buildSummary(session, remainingThoughts),
|
|
223
229
|
},
|
|
224
230
|
};
|
|
225
231
|
}
|
|
232
|
+
function buildSummary(session, remainingThoughts) {
|
|
233
|
+
if (session.status === 'completed') {
|
|
234
|
+
return `Reasoning complete. ${String(session.thoughts.length)} thoughts produced at level "${session.level}". Session ${session.id}.`;
|
|
235
|
+
}
|
|
236
|
+
if (session.status === 'cancelled') {
|
|
237
|
+
return `Session cancelled at thought ${String(session.thoughts.length)}/${String(session.totalThoughts)}. Session ${session.id}.`;
|
|
238
|
+
}
|
|
239
|
+
return (`CONTINUE: Call reasoning.think with { sessionId: "${session.id}", level: "${session.level}", thought: "<your next reasoning step>" }. ` +
|
|
240
|
+
`Progress: ${String(session.thoughts.length)}/${String(session.totalThoughts)} thoughts, ${String(remainingThoughts)} remaining.`);
|
|
241
|
+
}
|
|
226
242
|
async function emitLog(server, level, data, sessionId) {
|
|
227
243
|
try {
|
|
228
244
|
await server.sendLoggingMessage({
|
|
@@ -418,12 +434,15 @@ const TOOL_NAME = 'reasoning.think';
|
|
|
418
434
|
export function registerReasoningThinkTool(server, iconMeta) {
|
|
419
435
|
server.experimental.tasks.registerToolTask(TOOL_NAME, {
|
|
420
436
|
title: 'Reasoning Think',
|
|
421
|
-
description: '
|
|
422
|
-
'
|
|
423
|
-
'
|
|
424
|
-
'
|
|
425
|
-
'
|
|
426
|
-
'
|
|
437
|
+
description: 'Structured multi-step reasoning tool. Decomposes analysis into sequential thought steps stored in a persistent session trace.\n\n' +
|
|
438
|
+
'USAGE PATTERN:\n' +
|
|
439
|
+
'1. Start: { query: "...", level: "basic"|"normal"|"high", thought: "your analysis..." }\n' +
|
|
440
|
+
'2. Continue: { sessionId: "<from response>", level: "<same level>", thought: "next step..." }\n' +
|
|
441
|
+
'3. Repeat step 2 until response shows status: "completed"\n\n' +
|
|
442
|
+
'IMPORTANT: You MUST pass the returned sessionId on every continuation call, and use the same level throughout.\n' +
|
|
443
|
+
'The thought parameter stores YOUR reasoning verbatim — write thorough analysis in each step.\n\n' +
|
|
444
|
+
'Levels: basic (3–5 steps, 2K budget), normal (6–10, 8K), high (15–25, 32K).\n' +
|
|
445
|
+
'Alternative: Use runMode="run_to_completion" with thought + thoughts[] to submit all steps in one call.',
|
|
427
446
|
inputSchema: ReasoningThinkInputSchema,
|
|
428
447
|
outputSchema: ReasoningThinkToolOutputSchema,
|
|
429
448
|
annotations: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reasoning-think.js","sourceRoot":"","sources":["../../src/tools/reasoning-think.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"reasoning-think.js","sourceRoot":"","sources":["../../src/tools/reasoning-think.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAE7D,OAAO,EAEL,yBAAyB,GAC1B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC;AAEvE,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAS7D,MAAM,kCAAkC,GAAG,EAAE,CAAC;AAC9C,MAAM,qBAAqB,GAAG,8CAA8C,CAAC;AAoD7E,SAAS,gBAAgB,CACvB,QAA4B,EAC5B,aAAqB;IAErB,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,aAAa,CAAC;IACvB,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAC7C,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5C,OAAO,aAAa,CAAC;IACvB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,iBAAiB,CAAC,cAAsB;IAI/C,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,OAAO;QACL,UAAU;YACR,IAAI,WAAW,IAAI,cAAc,EAAE,CAAC;gBAClC,OAAO,KAAK,CAAC;YACf,CAAC;YACD,WAAW,IAAI,CAAC,CAAC;YACjB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO;YACL,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;gBACpB,WAAW,IAAI,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,oBAAoB,GAAG,iBAAiB,CAC5C,gBAAgB,CACd,OAAO,CAAC,GAAG,CAAC,iCAAiC,EAC7C,kCAAkC,CACnC,CACF,CAAC;AAEF,SAAS,cAAc,CAAC,KAAc;IACpC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC;AACrD,CAAC;AAED,SAAS,eAAe,CAAC,KAAc;IACrC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,CACL,OAAO,KAAK,CAAC,UAAU,KAAK,UAAU;QACtC,OAAO,KAAK,CAAC,OAAO,KAAK,UAAU;QACnC,OAAO,KAAK,CAAC,eAAe,KAAK,UAAU;QAC3C,OAAO,KAAK,CAAC,gBAAgB,KAAK,UAAU;QAC5C,OAAO,KAAK,CAAC,aAAa,KAAK,UAAU,CAC1C,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAc;IACvC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,CACL,OAAO,KAAK,CAAC,OAAO,KAAK,SAAS;QAClC,OAAO,KAAK,CAAC,gBAAgB,KAAK,UAAU;QAC5C,OAAO,KAAK,CAAC,mBAAmB,KAAK,UAAU,CAChD,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,KAAc;IACrC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC;AAChE,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAc;IAC1C,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1E,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;QACzE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QACnE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IACE,KAAK,CAAC,gBAAgB,KAAK,SAAS;QACpC,KAAK,CAAC,gBAAgB,KAAK,IAAI;QAC/B,OAAO,KAAK,CAAC,gBAAgB,KAAK,QAAQ,EAC1C,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC9B,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YACjC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,EAAE,aAAa,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC;QACtC,IAAI,aAAa,KAAK,SAAS,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,EAAE,CAAC;YACnE,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,uBAAuB,CAAC,QAAiB;IAChD,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAC9D,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc;IACxC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7D,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC1B,OAAO,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC;IACxC,CAAC;IAED,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAC9B,OAAO,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACxC,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc;IACtC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5D,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QAC/D,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACtE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAc;IAC1C,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,OAAe;IAC5C,IACE,OAAO,KAAK,mBAAmB;QAC/B,OAAO,KAAK,0BAA0B,EACtC,CAAC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,IACE,OAAO,CAAC,UAAU,CAAC,wBAAwB,CAAC;QAC5C,OAAO,CAAC,UAAU,CAAC,8BAA8B,CAAC,EAClD,CAAC;QACD,OAAO,yBAAyB,CAAC;IACnC,CAAC;IACD,IAAI,OAAO,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE,CAAC;QAC7C,OAAO,qBAAqB,CAAC;IAC/B,CAAC;IACD,IAAI,OAAO,CAAC,UAAU,CAAC,yBAAyB,CAAC,EAAE,CAAC;QAClD,OAAO,0BAA0B,CAAC;IACpC,CAAC;IACD,IAAI,OAAO,CAAC,UAAU,CAAC,qCAAqC,CAAC,EAAE,CAAC;QAC9D,OAAO,yBAAyB,CAAC;IACnC,CAAC;IACD,IACE,OAAO,CAAC,UAAU,CAChB,iFAAiF,CAClF,EACD,CAAC;QACD,OAAO,yBAAyB,CAAC;IACnC,CAAC;IACD,IAAI,OAAO,KAAK,qBAAqB,EAAE,CAAC;QACtC,OAAO,eAAe,CAAC;IACzB,CAAC;IACD,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,SAAS,kBAAkB,CACzB,QAAgB,EAChB,KAAa,EACb,KAAiC;IAEjC,IAAI,QAAQ,IAAI,CAAC,IAAI,QAAQ,IAAI,KAAK,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;QAC3D,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,QAAQ,GAAG,CAAC,KAAK,CAAC,CAAC;AAC5B,CAAC;AAED,SAAS,cAAc,CAAC,MAA2B;IACjD,OAAO,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC;AAClC,CAAC;AAED,SAAS,kBAAkB,CAAC,MAA2B;IACrD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;QAC3C,CAAC,CAAC,MAAM,CAAC,OAAO;QAChB,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACrB,OAAO,CAAC,GAAG,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC;AAClD,CAAC;AAED,SAAS,uBAAuB,CAAC,SAAkB;IACjD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO,CAAC,CAAC;IACX,CAAC;IACD,OAAO,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,MAAM,IAAI,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,uBAAuB,CAC9B,OAA0B,EAC1B,OAAyB;IAEzB,OAAO,CACL,OAAO,KAAK,MAAM;QAClB,OAAO,CAAC,MAAM,KAAK,QAAQ;QAC3B,OAAO,CAAC,QAAQ,CAAC,MAAM,IAAI,OAAO,CAAC,aAAa;QAChD,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,WAAW,CAC1C,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,qBAAqB,CAAC,IAWpC;IACC,MAAM,EACJ,SAAS,EACT,MAAM,EACN,UAAU,EACV,SAAS,EACT,KAAK,EACL,SAAS,EACT,cAAc,EACd,OAAO,EACP,aAAa,EACb,UAAU,GACX,GAAG,IAAI,CAAC;IAET,IAAI,eAAe,GAAG,SAAS,CAAC;IAChC,IAAI,OAAsC,CAAC;IAC3C,MAAM,QAAQ,GAAG,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC;IAE/D,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC;QAC9C,MAAM,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;QAExD,MAAM,YAAY,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;QAC1C,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,MAAM;QACR,CAAC;QAED,OAAO,GAAG,MAAM,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE;YACvC,GAAG,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxE,GAAG,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3D,OAAO,EAAE,YAAY;YACrB,WAAW,EAAE,UAAU,CAAC,MAAM;YAC9B,UAAU;SACX,CAAC,CAAC;QAEH,eAAe,GAAG,OAAO,CAAC,EAAE,CAAC;QAC7B,IAAI,uBAAuB,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC;YAC9C,MAAM;QACR,CAAC;IACH,CAAC;IAED,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IACrD,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,qBAAqB,CAC5B,OAA0B,EAC1B,iBAAyB,EACzB,cAAkC;IAElC,MAAM,KAAK,GAAG,YAAY,CAAC,QAAQ,EAAE,CAAC;IACtC,MAAM,SAAS,GACb,YAAY,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,SAAS,GAAG,KAAK,CAAC;IAErE,MAAM,iBAAiB,GAAG,cAAc,IAAI,OAAO,CAAC,aAAa,CAAC;IAClE,MAAM,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAChC,CAAC,EACD,OAAO,CAAC,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAChD,CAAC;IAEF,OAAO;QACL,EAAE,EAAE,IAAI;QACR,MAAM,EAAE;YACN,SAAS,EAAE,OAAO,CAAC,EAAE;YACrB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,iBAAiB;YACjB,iBAAiB;YACjB,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,iBAAiB;YACjB,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,KAAK;YACL,SAAS;YACT,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,OAAO,EAAE,YAAY,CAAC,OAAO,EAAE,iBAAiB,CAAC;SAClD;KACF,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CACnB,OAA0B,EAC1B,iBAAyB;IAEzB,IAAI,OAAO,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;QACnC,OAAO,uBAAuB,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,gCAAgC,OAAO,CAAC,KAAK,cAAc,OAAO,CAAC,EAAE,GAAG,CAAC;IACxI,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;QACnC,OAAO,gCAAgC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,aAAa,OAAO,CAAC,EAAE,GAAG,CAAC;IACpI,CAAC;IACD,OAAO,CACL,qDAAqD,OAAO,CAAC,EAAE,cAAc,OAAO,CAAC,KAAK,8CAA8C;QACxI,aAAa,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,cAAc,MAAM,CAAC,iBAAiB,CAAC,aAAa,CAClI,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,OAAO,CACpB,MAAiB,EACjB,KAAmB,EACnB,IAA6B,EAC7B,SAAkB;IAElB,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,kBAAkB,CAC7B;YACE,KAAK;YACL,MAAM,EAAE,SAAS;YACjB,IAAI;SACL,EACD,SAAS,CACV,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,yCAAyC;IAC3C,CAAC;AACH,CAAC;AAED,SAAS,4BAA4B,CAAC,MAAmB;IACvD,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,UAAU,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,MAAM,CAAC,gBAAgB,CACrB,OAAO,EACP,GAAG,EAAE;QACH,UAAU,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC,EACD,EAAE,IAAI,EAAE,IAAI,EAAE,CACf,CAAC;IACF,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,KAAK,UAAU,eAAe,CAC5B,SAAwB,EACxB,MAAc;IAEd,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC,MAAM,KAAK,WAAW,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,KAAK,UAAU,kBAAkB,CAC/B,SAAwB,EACxB,MAAc,EACd,UAA2B;IAE3B,IAAI,MAAM,eAAe,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC;QAC7C,UAAU,CAAC,KAAK,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,IAO9B;IACC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;IAE7E,OAAO,KAAK,EAAE,QAAgB,EAAE,KAAa,EAAiB,EAAE;QAC9D,MAAM,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;QAExD,IACE,aAAa,KAAK,SAAS;YAC3B,CAAC,kBAAkB,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,EAC3C,CAAC;YACD,OAAO;QACT,CAAC;QAED,MAAM,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;YAC/B,MAAM,EAAE,wBAAwB;YAChC,MAAM,EAAE;gBACN,aAAa;gBACb,QAAQ;gBACR,KAAK;gBACL,OAAO,EAAE,eAAe,MAAM,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG;aAC7D;SACF,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,gBAAgB,CAC7B,SAAwB,EACxB,MAAc,EACd,QAAwB;IAExB,IAAI,CAAC;QACH,MAAM,SAAS,CAAC,eAAe,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC9D,CAAC;IAAC,MAAM,CAAC;QACP,0DAA0D;IAC5D,CAAC;AACH,CAAC;AAED,KAAK,UAAU,2BAA2B,CACxC,SAAwB,EACxB,MAAc,EACd,aAAqB;IAErB,IAAI,CAAC;QACH,MAAM,SAAS,CAAC,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;IACrE,CAAC;IAAC,MAAM,CAAC;QACP,qCAAqC;IACvC,CAAC;AACH,CAAC;AAED,SAAS,+BAA+B,CACtC,MAA2B,EAC3B,aAAuB;IAEvB,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,GAAG,MAAM,CAAC;IAC7C,IAAI,SAAS,KAAK,SAAS,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;QAC5D,MAAM,IAAI,KAAK,CACb,iFAAiF,CAClF,CAAC;IACJ,CAAC;IAED,IAAI,cAAc,GAAG,cAAc,IAAI,CAAC,CAAC;IACzC,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,sBAAsB,SAAS,EAAE,CAAC,CAAC;QACrD,CAAC;QACD,cAAc,GAAG,IAAI,CAAC,GAAG,CACvB,CAAC,EACD,QAAQ,CAAC,aAAa,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAClD,CAAC;IACJ,CAAC;IAED,IAAI,aAAa,CAAC,MAAM,GAAG,cAAc,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CACb,uCAAuC,MAAM,CAC3C,cAAc,CACf,6BAA6B,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAC7D,CAAC;IACJ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,IAMhC;IACC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IAC7D,MAAM,OAAO,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IACvC,MAAM,SAAS,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAEjD,IAAI,MAAM,eAAe,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC;QAC7C,MAAM,OAAO,CACX,MAAM,EACN,QAAQ,EACR,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,EACpD,SAAS,CACV,CAAC;QACF,OAAO;IACT,CAAC;IAED,MAAM,2BAA2B,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAE9D,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;QAC9B,IAAI,SAAS,EAAE,CAAC;YACd,YAAY,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACxC,CAAC;QACD,MAAM,gBAAgB,CACpB,SAAS,EACT,MAAM,EACN,mBAAmB,CAAC,SAAS,EAAE,OAAO,CAAC,CACxC,CAAC;QACF,MAAM,OAAO,CACX,MAAM,EACN,QAAQ,EACR,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,EAClD,SAAS,CACV,CAAC;QACF,OAAO;IACT,CAAC;IAED,MAAM,gBAAgB,CACpB,SAAS,EACT,MAAM,EACN,mBAAmB,CAAC,SAAS,EAAE,OAAO,CAAC,CACxC,CAAC;IACF,MAAM,OAAO,CACX,MAAM,EACN,OAAO,EACP,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,EAC1D,SAAS,CACV,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,IAQ/B;IACC,MAAM,EACJ,MAAM,EACN,SAAS,EACT,MAAM,EACN,MAAM,EACN,aAAa,EACb,UAAU,EACV,SAAS,GACV,GAAG,IAAI,CAAC;IACT,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,MAAM,CAAC;IAChD,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,aAAa,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;IACjD,MAAM,SAAS,GAAG,KAAK,IAAI,EAAE,CAAC;IAE9B,MAAM,OAAO,CACX,MAAM,EACN,MAAM,EACN;QACE,KAAK,EAAE,cAAc;QACrB,MAAM;QACN,KAAK;QACL,OAAO;QACP,YAAY,EAAE,MAAM,CAAC,SAAS,KAAK,SAAS;QAC5C,cAAc,EAAE,cAAc,IAAI,IAAI;QACtC,aAAa,EAAE,aAAa,CAAC,MAAM;KACpC,EACD,SAAS,CACV,CAAC;IAEF,IAAI,CAAC;QACH,IAAI,OAAO,KAAK,mBAAmB,EAAE,CAAC;YACpC,+BAA+B,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QACzD,CAAC;QAED,MAAM,aAAa,GAAG,uBAAuB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAEhE,MAAM,YAAY,GAAG;YACnB,MAAM;YACN,SAAS;YACT,MAAM;YACN,KAAK;YACL,UAAU;YACV,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC1D,CAAC;QAEF,MAAM,UAAU,GAAG,qBAAqB,CAAC,YAAY,CAAC,CAAC;QACvD,MAAM,OAAO,GAAG,MAAM,qBAAqB,CAAC;YAC1C,SAAS;YACT,MAAM;YACN,UAAU;YACV,SAAS;YACT,KAAK;YACL,GAAG,CAAC,MAAM,CAAC,SAAS,KAAK,SAAS;gBAChC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE;gBACjC,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3D,OAAO;YACP,aAAa;YACb,UAAU;SACX,CAAC,CAAC;QAEH,IAAI,MAAM,eAAe,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC;YAC7C,MAAM,OAAO,CACX,MAAM,EACN,QAAQ,EACR,EAAE,KAAK,EAAE,8BAA8B,EAAE,MAAM,EAAE,EACjD,SAAS,CACV,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAChC,CAAC,EACD,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,aAAa,CACxC,CAAC;QACF,MAAM,MAAM,GAAG,qBAAqB,CAClC,OAAO,EACP,iBAAiB,EACjB,cAAc,CACf,CAAC;QAEF,MAAM,aAAa,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAC;QACxD,MAAM,gBAAgB,GAAyB;YAC7C,GAAG,EAAE,2BAA2B,OAAO,CAAC,EAAE,WAAW;YACrD,QAAQ,EAAE,eAAe;YACzB,IAAI,EAAE,aAAa;SACpB,CAAC;QAEF,MAAM,SAAS,CAAC,eAAe,CAC7B,MAAM,EACN,WAAW,EACX,kBAAkB,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAC7C,CAAC;QACF,MAAM,OAAO,CACX,MAAM,EACN,MAAM,EACN;YACE,KAAK,EAAE,gBAAgB;YACvB,MAAM;YACN,SAAS,EAAE,OAAO,CAAC,EAAE;YACrB,iBAAiB;YACjB,aAAa,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM;SACvC,EACD,SAAS,CACV,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,WAAW,GAAG;YAClB,MAAM;YACN,SAAS;YACT,MAAM;YACN,KAAK;YACL,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAClD,CAAC;QACF,MAAM,iBAAiB,CAAC,WAAW,CAAC,CAAC;IACvC,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,KAAyB;IAC1C,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,KAAK,CAAC,MAAM,CAAC;AACtB,CAAC;AAED,MAAM,SAAS,GAAG,iBAAiB,CAAC;AAEpC,MAAM,UAAU,0BAA0B,CACxC,MAAiB,EACjB,QAAmB;IAEnB,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,gBAAgB,CACxC,SAAS,EACT;QACE,KAAK,EAAE,iBAAiB;QACxB,WAAW,EACT,mIAAmI;YACnI,kBAAkB;YAClB,2FAA2F;YAC3F,iGAAiG;YACjG,+DAA+D;YAC/D,kHAAkH;YAClH,kGAAkG;YAClG,+EAA+E;YAC/E,yGAAyG;QAC3G,WAAW,EAAE,yBAAyB;QACtC,YAAY,EAAE,8BAA8B;QAC5C,WAAW,EAAE;YACX,YAAY,EAAE,KAAK;YACnB,cAAc,EAAE,KAAK;SACtB;QACD,SAAS,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE;QACtC,GAAG,CAAC,QAAQ;YACV,CAAC,CAAC;gBACE,KAAK,EAAE;oBACL;wBACE,GAAG,EAAE,QAAQ,CAAC,GAAG;wBACjB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;qBAC5B;iBACF;aACF;YACH,CAAC,CAAC,EAAE,CAAC;KACR,EACD;QACE,KAAK,CAAC,UAAU,CAAC,SAAS,EAAE,QAAQ;YAClC,MAAM,WAAW,GAAG,yBAAyB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;YACnE,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;gBACzB,MAAM,IAAI,KAAK,CACb,mCAAmC,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE,CAC/D,CAAC;YACJ,CAAC;YACD,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC;YAChC,MAAM,KAAK,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;YAChD,MAAM,aAAa,GAAG,KAAK,CAAC,KAAK,EAAE,aAAa,CAAC;YAEjD,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC;gBAC5C,GAAG,EAAE,KAAK,CAAC,gBAAgB,IAAI,IAAI;gBACnC,YAAY,EAAE,GAAG;aAClB,CAAC,CAAC;YAEH,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,EAAE,CAAC;gBACvC,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;YACzC,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,UAAU,GAAG,4BAA4B,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBAC9D,MAAM,QAAQ,GAAG;oBACf,MAAM;oBACN,SAAS,EAAE,KAAK,CAAC,SAAS;oBAC1B,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,MAAM;oBACN,UAAU;oBACV,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACzD,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS;wBAC/B,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE;wBAChC,CAAC,CAAC,EAAE,CAAC;iBACR,CAAC;gBACF,KAAK,gBAAgB,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;oBAC3C,oBAAoB,CAAC,OAAO,EAAE,CAAC;gBACjC,CAAC,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,oBAAoB,CAAC,OAAO,EAAE,CAAC;gBAC/B,MAAM,KAAK,CAAC;YACd,CAAC;YAED,OAAO,EAAE,IAAI,EAAE,CAAC;QAClB,CAAC;QAED,OAAO,CAAC,OAAO,EAAE,QAAQ;YACvB,MAAM,KAAK,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;YAChD,OAAO,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;QACnD,CAAC;QAED,KAAK,CAAC,aAAa,CAAC,OAAO,EAAE,QAAQ;YACnC,MAAM,KAAK,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;YAChD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;YACrE,oBAAoB,CAAC,MAAM,CAAC,CAAC;YAC7B,OAAO,MAAM,CAAC;QAChB,CAAC;KACF,CACF,CAAC;AACJ,CAAC"}
|