@oh-my-pi/pi-coding-agent 15.8.3 → 15.9.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/CHANGELOG.md +74 -31
- package/dist/types/capability/skill.d.ts +7 -0
- package/dist/types/config/settings-schema.d.ts +36 -22
- package/dist/types/debug/protocol-probe.d.ts +38 -0
- package/dist/types/debug/terminal-info.d.ts +34 -0
- package/dist/types/export/html/template.generated.d.ts +1 -1
- package/dist/types/extensibility/custom-tools/types.d.ts +1 -1
- package/dist/types/extensibility/extensions/types.d.ts +11 -0
- package/dist/types/extensibility/shared-events.d.ts +1 -1
- package/dist/types/index.d.ts +1 -0
- package/dist/types/mcp/transports/stdio.d.ts +16 -7
- package/dist/types/modes/components/assistant-message.d.ts +3 -2
- package/dist/types/modes/components/hook-selector.d.ts +11 -0
- package/dist/types/modes/components/todo-reminder.d.ts +1 -1
- package/dist/types/modes/components/transcript-container.d.ts +36 -0
- package/dist/types/modes/interactive-mode.d.ts +2 -1
- package/dist/types/modes/rpc/rpc-types.d.ts +1 -1
- package/dist/types/modes/theme/theme.d.ts +20 -1
- package/dist/types/plan-mode/plan-handoff.d.ts +20 -0
- package/dist/types/session/agent-session.d.ts +1 -1
- package/dist/types/session/indexed-session-storage.d.ts +59 -0
- package/dist/types/session/redis-session-storage.d.ts +12 -85
- package/dist/types/session/session-manager.d.ts +20 -0
- package/dist/types/session/session-storage.d.ts +5 -7
- package/dist/types/session/sql-session-storage.d.ts +16 -85
- package/dist/types/task/executor.d.ts +9 -0
- package/dist/types/task/index.d.ts +3 -1
- package/dist/types/telemetry-export.d.ts +19 -0
- package/dist/types/tiny/compiled-runtime.d.ts +35 -0
- package/dist/types/tools/ask.d.ts +1 -0
- package/dist/types/tools/index.d.ts +4 -2
- package/dist/types/tools/path-utils.d.ts +1 -1
- package/dist/types/tools/search.d.ts +2 -2
- package/dist/types/tools/{todo-write.d.ts → todo.d.ts} +18 -18
- package/dist/types/utils/session-color.d.ts +7 -2
- package/dist/types/web/search/index.d.ts +1 -1
- package/dist/types/web/search/provider.d.ts +2 -2
- package/dist/types/web/search/types.d.ts +65 -1
- package/package.json +15 -9
- package/scripts/build-binary.ts +12 -0
- package/src/capability/skill.ts +7 -0
- package/src/cli/args.ts +1 -1
- package/src/config/settings-schema.ts +22 -55
- package/src/debug/index.ts +67 -1
- package/src/debug/protocol-probe.ts +267 -0
- package/src/debug/terminal-info.ts +127 -0
- package/src/export/html/template.generated.ts +1 -1
- package/src/export/html/template.js +3 -3
- package/src/extensibility/custom-tools/types.ts +1 -1
- package/src/extensibility/extensions/types.ts +11 -0
- package/src/extensibility/shared-events.ts +1 -1
- package/src/extensibility/skills.ts +3 -3
- package/src/index.ts +1 -0
- package/src/internal-urls/docs-index.generated.ts +7 -7
- package/src/main.ts +12 -0
- package/src/mcp/transports/stdio.ts +37 -12
- package/src/modes/acp/acp-event-mapper.ts +7 -7
- package/src/modes/components/assistant-message.ts +3 -2
- package/src/modes/components/hook-selector.ts +149 -14
- package/src/modes/components/session-selector.ts +36 -5
- package/src/modes/components/status-line/segments.ts +2 -1
- package/src/modes/components/status-line.ts +1 -1
- package/src/modes/components/tips.txt +1 -1
- package/src/modes/components/todo-reminder.ts +1 -1
- package/src/modes/components/tool-execution.ts +9 -4
- package/src/modes/components/transcript-container.ts +91 -0
- package/src/modes/controllers/event-controller.ts +12 -7
- package/src/modes/controllers/extension-ui-controller.ts +3 -0
- package/src/modes/controllers/todo-command-controller.ts +1 -1
- package/src/modes/interactive-mode.ts +18 -6
- package/src/modes/print-mode.ts +5 -0
- package/src/modes/rpc/rpc-types.ts +1 -1
- package/src/modes/theme/theme.ts +48 -8
- package/src/modes/utils/ui-helpers.ts +1 -0
- package/src/plan-mode/plan-handoff.ts +37 -0
- package/src/priority.json +4 -0
- package/src/prompts/goals/goal-continuation.md +1 -1
- package/src/prompts/system/eager-todo.md +3 -3
- package/src/prompts/system/orchestrate-notice.md +5 -5
- package/src/prompts/system/plan-mode-approved.md +14 -17
- package/src/prompts/system/plan-mode-reference.md +3 -6
- package/src/prompts/system/subagent-system-prompt.md +11 -0
- package/src/prompts/system/workflow-notice.md +1 -1
- package/src/prompts/tools/browser.md +5 -2
- package/src/prompts/tools/search.md +1 -1
- package/src/prompts/tools/task.md +3 -1
- package/src/prompts/tools/{todo-write.md → todo.md} +5 -5
- package/src/sdk.ts +1 -0
- package/src/session/agent-session.ts +14 -14
- package/src/session/indexed-session-storage.ts +430 -0
- package/src/session/redis-session-storage.ts +66 -377
- package/src/session/session-manager.ts +102 -22
- package/src/session/session-storage.ts +148 -68
- package/src/session/sql-session-storage.ts +131 -382
- package/src/slash-commands/helpers/todo.ts +2 -2
- package/src/task/executor.ts +9 -1
- package/src/task/index.ts +51 -1
- package/src/telemetry-export.ts +126 -0
- package/src/tiny/compiled-runtime.ts +179 -0
- package/src/tiny/worker.ts +24 -2
- package/src/tools/ask.ts +133 -87
- package/src/tools/fetch.ts +17 -4
- package/src/tools/find.ts +2 -2
- package/src/tools/index.ts +6 -4
- package/src/tools/path-utils.ts +16 -7
- package/src/tools/renderers.ts +2 -2
- package/src/tools/search.ts +6 -3
- package/src/tools/{todo-write.ts → todo.ts} +32 -35
- package/src/utils/session-color.ts +39 -14
- package/src/web/search/index.ts +1 -1
- package/src/web/search/provider.ts +18 -34
- package/src/web/search/types.ts +73 -32
|
@@ -981,8 +981,8 @@
|
|
|
981
981
|
return out;
|
|
982
982
|
}
|
|
983
983
|
|
|
984
|
-
function
|
|
985
|
-
let html = toolHead('
|
|
984
|
+
function renderTodo(name, args, result, ctx) {
|
|
985
|
+
let html = toolHead('todo');
|
|
986
986
|
const ops = Array.isArray(args.ops) ? args.ops : null;
|
|
987
987
|
if (ops) {
|
|
988
988
|
html += '<div class="tool-args">';
|
|
@@ -1520,7 +1520,7 @@
|
|
|
1520
1520
|
search: renderSearch,
|
|
1521
1521
|
find: renderFind,
|
|
1522
1522
|
lsp: renderLsp,
|
|
1523
|
-
|
|
1523
|
+
todo: renderTodo,
|
|
1524
1524
|
task: renderTask,
|
|
1525
1525
|
web_search: renderWebSearch,
|
|
1526
1526
|
fetch: renderFetch,
|
|
@@ -21,7 +21,7 @@ import type { ExecOptions, ExecResult } from "../../exec/exec";
|
|
|
21
21
|
import type { HookUIContext } from "../../extensibility/hooks/types";
|
|
22
22
|
import type { Theme } from "../../modes/theme/theme";
|
|
23
23
|
import type { ReadonlySessionManager } from "../../session/session-manager";
|
|
24
|
-
import type { TodoItem } from "../../tools/todo
|
|
24
|
+
import type { TodoItem } from "../../tools/todo";
|
|
25
25
|
|
|
26
26
|
/** Alias for clarity */
|
|
27
27
|
export type CustomToolUIContext = HookUIContext;
|
|
@@ -124,6 +124,17 @@ export interface ExtensionUIDialogOptions {
|
|
|
124
124
|
onExternalEditor?: () => void;
|
|
125
125
|
/** Optional footer hint text rendered by interactive selector */
|
|
126
126
|
helpText?: string;
|
|
127
|
+
/** Render a leading radio/checkbox marker before each markable option in
|
|
128
|
+
* select dialogs (matches the ask transcript). "radio" fills the cursor row
|
|
129
|
+
* for single-choice; "checkbox" reflects `checkedIndices` per row for
|
|
130
|
+
* multi-select. Options beyond `markableCount` keep the plain cursor. */
|
|
131
|
+
selectionMarker?: "radio" | "checkbox";
|
|
132
|
+
/** For `selectionMarker: "checkbox"`: option indices currently checked. */
|
|
133
|
+
checkedIndices?: readonly number[];
|
|
134
|
+
/** Number of leading options that receive a selection marker; the remaining
|
|
135
|
+
* trailing options (e.g. "Other"/"Done" actions) keep the plain cursor.
|
|
136
|
+
* Defaults to all options when `selectionMarker` is set. */
|
|
137
|
+
markableCount?: number;
|
|
127
138
|
}
|
|
128
139
|
|
|
129
140
|
/** Raw terminal input listener for extensions. */
|
|
@@ -18,7 +18,7 @@ import type { ImageContent, TextContent, ToolResultMessage } from "@oh-my-pi/pi-
|
|
|
18
18
|
import type { Rule } from "../capability/rule";
|
|
19
19
|
import type { Goal, GoalModeState } from "../goals/state";
|
|
20
20
|
import type { BranchSummaryEntry, CompactionEntry, SessionEntry } from "../session/session-manager";
|
|
21
|
-
import type { TodoItem } from "../tools/todo
|
|
21
|
+
import type { TodoItem } from "../tools/todo";
|
|
22
22
|
|
|
23
23
|
// ============================================================================
|
|
24
24
|
// Session Events
|
|
@@ -82,7 +82,7 @@ export async function loadSkillsFromDir(options: LoadSkillsFromDirOptions): Prom
|
|
|
82
82
|
filePath: capSkill.path,
|
|
83
83
|
baseDir: capSkill.path.replace(/[\\/]SKILL\.md$/, ""),
|
|
84
84
|
source: options.source,
|
|
85
|
-
hide: capSkill.frontmatter?.hide === true,
|
|
85
|
+
hide: capSkill.frontmatter?.hide === true || capSkill.frontmatter?.disableModelInvocation === true,
|
|
86
86
|
_source: capSkill._source,
|
|
87
87
|
})),
|
|
88
88
|
warnings: (result.warnings ?? []).map(message => ({ skillPath: options.dir, message })),
|
|
@@ -197,7 +197,7 @@ export async function loadSkills(options: LoadSkillsOptions = {}): Promise<LoadS
|
|
|
197
197
|
filePath: capSkill.path,
|
|
198
198
|
baseDir: capSkill.path.replace(/[\\/]SKILL\.md$/, ""),
|
|
199
199
|
source: `${capSkill._source.provider}:${capSkill.level}`,
|
|
200
|
-
hide: capSkill.frontmatter?.hide === true,
|
|
200
|
+
hide: capSkill.frontmatter?.hide === true || capSkill.frontmatter?.disableModelInvocation === true,
|
|
201
201
|
_source: capSkill._source,
|
|
202
202
|
});
|
|
203
203
|
realPathSet.add(resolvedPath);
|
|
@@ -234,7 +234,7 @@ export async function loadSkills(options: LoadSkillsOptions = {}): Promise<LoadS
|
|
|
234
234
|
filePath: capSkill.path,
|
|
235
235
|
baseDir: capSkill.path.replace(/[\\/]SKILL\.md$/, ""),
|
|
236
236
|
source: "custom:user",
|
|
237
|
-
hide: capSkill.frontmatter?.hide === true,
|
|
237
|
+
hide: capSkill.frontmatter?.hide === true || capSkill.frontmatter?.disableModelInvocation === true,
|
|
238
238
|
_source: { ...capSkill._source, providerName: "Custom" },
|
|
239
239
|
},
|
|
240
240
|
path: capSkill.path,
|
package/src/index.ts
CHANGED
|
@@ -39,6 +39,7 @@ export * from "./sdk";
|
|
|
39
39
|
export * from "./session/agent-session";
|
|
40
40
|
// Auth and model registry
|
|
41
41
|
export * from "./session/auth-storage";
|
|
42
|
+
export * from "./session/indexed-session-storage";
|
|
42
43
|
export * from "./session/messages";
|
|
43
44
|
export * from "./session/redis-session-storage";
|
|
44
45
|
export * from "./session/session-dump-format";
|