@optima-chat/optima-agent 0.2.33 → 0.3.1

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 (62) hide show
  1. package/.claude/settings.local.json +43 -0
  2. package/README.md +74 -0
  3. package/dist/bin/optima.js +13 -1
  4. package/dist/bin/optima.js.map +1 -1
  5. package/dist/src/agent.d.ts.map +1 -1
  6. package/dist/src/agent.js +7 -0
  7. package/dist/src/agent.js.map +1 -1
  8. package/dist/src/server/index.d.ts.map +1 -1
  9. package/dist/src/server/index.js +61 -1
  10. package/dist/src/server/index.js.map +1 -1
  11. package/dist/src/server/types.d.ts +17 -1
  12. package/dist/src/server/types.d.ts.map +1 -1
  13. package/dist/src/types.d.ts +24 -0
  14. package/dist/src/types.d.ts.map +1 -1
  15. package/dist/src/ui/App.d.ts +6 -0
  16. package/dist/src/ui/App.d.ts.map +1 -0
  17. package/dist/src/ui/App.js +164 -0
  18. package/dist/src/ui/App.js.map +1 -0
  19. package/dist/src/ui/components/Composer.d.ts +10 -0
  20. package/dist/src/ui/components/Composer.d.ts.map +1 -0
  21. package/dist/src/ui/components/Composer.js +13 -0
  22. package/dist/src/ui/components/Composer.js.map +1 -0
  23. package/dist/src/ui/components/Header.d.ts +7 -0
  24. package/dist/src/ui/components/Header.d.ts.map +1 -0
  25. package/dist/src/ui/components/Header.js +7 -0
  26. package/dist/src/ui/components/Header.js.map +1 -0
  27. package/dist/src/ui/components/Message.d.ts +12 -0
  28. package/dist/src/ui/components/Message.d.ts.map +1 -0
  29. package/dist/src/ui/components/Message.js +21 -0
  30. package/dist/src/ui/components/Message.js.map +1 -0
  31. package/dist/src/ui/components/MessageList.d.ts +9 -0
  32. package/dist/src/ui/components/MessageList.d.ts.map +1 -0
  33. package/dist/src/ui/components/MessageList.js +18 -0
  34. package/dist/src/ui/components/MessageList.js.map +1 -0
  35. package/dist/src/ui/components/Spinner.d.ts +6 -0
  36. package/dist/src/ui/components/Spinner.d.ts.map +1 -0
  37. package/dist/src/ui/components/Spinner.js +7 -0
  38. package/dist/src/ui/components/Spinner.js.map +1 -0
  39. package/dist/src/ui/components/StatusBar.d.ts +11 -0
  40. package/dist/src/ui/components/StatusBar.d.ts.map +1 -0
  41. package/dist/src/ui/components/StatusBar.js +7 -0
  42. package/dist/src/ui/components/StatusBar.js.map +1 -0
  43. package/dist/src/ui/components/index.d.ts +7 -0
  44. package/dist/src/ui/components/index.d.ts.map +1 -0
  45. package/dist/src/ui/components/index.js +7 -0
  46. package/dist/src/ui/components/index.js.map +1 -0
  47. package/dist/src/ui/conversation-manager.d.ts +2 -0
  48. package/dist/src/ui/conversation-manager.d.ts.map +1 -1
  49. package/dist/src/ui/conversation-manager.js +8 -0
  50. package/dist/src/ui/conversation-manager.js.map +1 -1
  51. package/dist/src/ui/headless-types.d.ts +21 -2
  52. package/dist/src/ui/headless-types.d.ts.map +1 -1
  53. package/dist/src/ui/headless.d.ts.map +1 -1
  54. package/dist/src/ui/headless.js +73 -1
  55. package/dist/src/ui/headless.js.map +1 -1
  56. package/dist/src/ui/stream.d.ts.map +1 -1
  57. package/dist/src/ui/stream.js +184 -2
  58. package/dist/src/ui/stream.js.map +1 -1
  59. package/dist/src/version.d.ts.map +1 -1
  60. package/dist/src/version.js +6 -1
  61. package/dist/src/version.js.map +1 -1
  62. package/package.json +1 -1
@@ -0,0 +1,10 @@
1
+ import React from "react";
2
+ interface ComposerProps {
3
+ value: string;
4
+ onChange: (value: string) => void;
5
+ onSubmit: (value: string) => void;
6
+ disabled?: boolean;
7
+ }
8
+ export declare const Composer: React.NamedExoticComponent<ComposerProps>;
9
+ export {};
10
+ //# sourceMappingURL=Composer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Composer.d.ts","sourceRoot":"","sources":["../../../../src/ui/components/Composer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAIjD,UAAU,aAAa;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,eAAO,MAAM,QAAQ,2CA6BnB,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
2
+ import { memo, useCallback } from "react";
3
+ import { Box, Text } from "ink";
4
+ import TextInput from "ink-text-input";
5
+ export const Composer = memo(function Composer({ value, onChange, onSubmit, disabled = false, }) {
6
+ const handleSubmit = useCallback((text) => {
7
+ if (text.trim()) {
8
+ onSubmit(text.trim());
9
+ }
10
+ }, [onSubmit]);
11
+ return (_jsxs(Box, { borderStyle: "single", borderColor: disabled ? "gray" : "green", paddingX: 1, children: [_jsxs(Text, { color: disabled ? "gray" : "green", bold: true, children: [">", " "] }), disabled ? (_jsx(Text, { color: "gray", children: "\u8BF7\u7B49\u5F85\u54CD\u5E94..." })) : (_jsx(TextInput, { value: value, onChange: onChange, onSubmit: handleSubmit, placeholder: "\u8F93\u5165\u6D88\u606F\u6216 /help \u83B7\u53D6\u5E2E\u52A9" }))] }));
12
+ });
13
+ //# sourceMappingURL=Composer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Composer.js","sourceRoot":"","sources":["../../../../src/ui/components/Composer.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACjD,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,SAAS,MAAM,gBAAgB,CAAC;AASvC,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,QAAQ,CAAC,EAC7C,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,QAAQ,GAAG,KAAK,GACF;IACd,MAAM,YAAY,GAAG,WAAW,CAAC,CAAC,IAAY,EAAE,EAAE;QAChD,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YAChB,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACxB,CAAC;IACH,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,OAAO,CACL,MAAC,GAAG,IAAC,WAAW,EAAC,QAAQ,EAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,aAC7E,MAAC,IAAI,IAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,mBAC3C,GAAG,EAAE,GAAG,IACJ,EACN,QAAQ,CAAC,CAAC,CAAC,CACV,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,kDAAgB,CACnC,CAAC,CAAC,CAAC,CACF,KAAC,SAAS,IACR,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,YAAY,EACtB,WAAW,EAAC,+DAAkB,GAC9B,CACH,IACG,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import React from "react";
2
+ interface HeaderProps {
3
+ version: string;
4
+ }
5
+ export declare const Header: React.NamedExoticComponent<HeaderProps>;
6
+ export {};
7
+ //# sourceMappingURL=Header.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Header.d.ts","sourceRoot":"","sources":["../../../../src/ui/components/Header.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAe,MAAM,OAAO,CAAC;AAGpC,UAAU,WAAW;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,MAAM,yCAWjB,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { memo } from "react";
3
+ import { Box, Text } from "ink";
4
+ export const Header = memo(function Header({ version }) {
5
+ return (_jsxs(Box, { borderStyle: "single", paddingX: 1, children: [_jsx(Text, { bold: true, color: "cyan", children: "Optima Agent" }), _jsxs(Text, { color: "gray", children: [" v", version] }), _jsx(Box, { flexGrow: 1 }), _jsx(Text, { color: "gray", children: "[Ctrl+C \u9000\u51FA]" })] }));
6
+ });
7
+ //# sourceMappingURL=Header.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Header.js","sourceRoot":"","sources":["../../../../src/ui/components/Header.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAMhC,MAAM,CAAC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,MAAM,CAAC,EAAE,OAAO,EAAe;IACjE,OAAO,CACL,MAAC,GAAG,IAAC,WAAW,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC,aACnC,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAC,MAAM,6BAEhB,EACP,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,mBAAI,OAAO,IAAQ,EACrC,KAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,GAAI,EACpB,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,sCAAmB,IACjC,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,12 @@
1
+ import React from "react";
2
+ export interface MessageItem {
3
+ role: "user" | "assistant" | "tool" | "error" | "system";
4
+ content: string;
5
+ toolName?: string;
6
+ }
7
+ interface MessageProps {
8
+ message: MessageItem;
9
+ }
10
+ export declare const Message: React.NamedExoticComponent<MessageProps>;
11
+ export {};
12
+ //# sourceMappingURL=Message.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Message.d.ts","sourceRoot":"","sources":["../../../../src/ui/components/Message.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAe,MAAM,OAAO,CAAC;AAGpC,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;IACzD,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,YAAY;IACpB,OAAO,EAAE,WAAW,CAAC;CACtB;AAED,eAAO,MAAM,OAAO,0CAmDlB,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
2
+ import { memo } from "react";
3
+ import { Box, Text } from "ink";
4
+ export const Message = memo(function Message({ message }) {
5
+ const { role, content, toolName } = message;
6
+ if (role === "user") {
7
+ return (_jsxs(Box, { marginY: 1, children: [_jsxs(Text, { color: "green", bold: true, children: [">", " "] }), _jsx(Text, { children: content })] }));
8
+ }
9
+ if (role === "tool") {
10
+ return (_jsxs(Box, { marginY: 1, borderStyle: "round", borderColor: "gray", paddingX: 1, flexDirection: "column", children: [_jsx(Text, { color: "yellow", children: toolName || "Tool" }), _jsx(Text, { color: "gray", children: content })] }));
11
+ }
12
+ if (role === "error") {
13
+ return (_jsx(Box, { marginY: 1, children: _jsxs(Text, { color: "red", children: ["\u9519\u8BEF: ", content] }) }));
14
+ }
15
+ if (role === "system") {
16
+ return (_jsx(Box, { marginY: 1, children: _jsx(Text, { color: "gray", italic: true, children: content }) }));
17
+ }
18
+ // assistant
19
+ return (_jsx(Box, { marginY: 1, children: _jsx(Text, { children: content }) }));
20
+ });
21
+ //# sourceMappingURL=Message.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Message.js","sourceRoot":"","sources":["../../../../src/ui/components/Message.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAYhC,MAAM,CAAC,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,OAAO,CAAC,EAAE,OAAO,EAAgB;IACpE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IAE5C,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACpB,OAAO,CACL,MAAC,GAAG,IAAC,OAAO,EAAE,CAAC,aACb,MAAC,IAAI,IAAC,KAAK,EAAC,OAAO,EAAC,IAAI,mBACrB,GAAG,EAAE,GAAG,IACJ,EACP,KAAC,IAAI,cAAE,OAAO,GAAQ,IAClB,CACP,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACpB,OAAO,CACL,MAAC,GAAG,IACF,OAAO,EAAE,CAAC,EACV,WAAW,EAAC,OAAO,EACnB,WAAW,EAAC,MAAM,EAClB,QAAQ,EAAE,CAAC,EACX,aAAa,EAAC,QAAQ,aAEtB,KAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,YAAE,QAAQ,IAAI,MAAM,GAAQ,EAChD,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,YAAE,OAAO,GAAQ,IAC/B,CACP,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QACrB,OAAO,CACL,KAAC,GAAG,IAAC,OAAO,EAAE,CAAC,YACb,MAAC,IAAI,IAAC,KAAK,EAAC,KAAK,+BAAM,OAAO,IAAQ,GAClC,CACP,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,OAAO,CACL,KAAC,GAAG,IAAC,OAAO,EAAE,CAAC,YACb,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,EAAC,MAAM,kBAAE,OAAO,GAAQ,GACtC,CACP,CAAC;IACJ,CAAC;IAED,YAAY;IACZ,OAAO,CACL,KAAC,GAAG,IAAC,OAAO,EAAE,CAAC,YACb,KAAC,IAAI,cAAE,OAAO,GAAQ,GAClB,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ import React from "react";
2
+ import { MessageItem } from "./Message.js";
3
+ interface MessageListProps {
4
+ messages: MessageItem[];
5
+ maxVisible?: number;
6
+ }
7
+ export declare const MessageList: React.NamedExoticComponent<MessageListProps>;
8
+ export {};
9
+ //# sourceMappingURL=MessageList.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MessageList.d.ts","sourceRoot":"","sources":["../../../../src/ui/components/MessageList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwB,MAAM,OAAO,CAAC;AAE7C,OAAO,EAAW,WAAW,EAAE,MAAM,cAAc,CAAC;AAEpD,UAAU,gBAAgB;IACxB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,WAAW,8CA6BtB,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
2
+ import { memo, useMemo } from "react";
3
+ import { Box, Text } from "ink";
4
+ import { Message } from "./Message.js";
5
+ export const MessageList = memo(function MessageList({ messages, maxVisible = 10 }) {
6
+ // 只显示最近的消息,避免内容超出屏幕导致闪烁
7
+ const { visibleMessages, hiddenCount } = useMemo(() => {
8
+ if (messages.length <= maxVisible) {
9
+ return { visibleMessages: messages, hiddenCount: 0 };
10
+ }
11
+ return {
12
+ visibleMessages: messages.slice(-maxVisible),
13
+ hiddenCount: messages.length - maxVisible,
14
+ };
15
+ }, [messages, maxVisible]);
16
+ return (_jsxs(Box, { flexDirection: "column", flexGrow: 1, children: [hiddenCount > 0 && (_jsx(Box, { marginBottom: 1, children: _jsxs(Text, { color: "gray", italic: true, children: ["... ", hiddenCount, " \u6761\u5386\u53F2\u6D88\u606F\u5DF2\u9690\u85CF (\u4F7F\u7528 /clear \u6E05\u7A7A)"] }) })), visibleMessages.map((msg, index) => (_jsx(Message, { message: msg }, messages.length - maxVisible + index)))] }));
17
+ });
18
+ //# sourceMappingURL=MessageList.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MessageList.js","sourceRoot":"","sources":["../../../../src/ui/components/MessageList.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC7C,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,OAAO,EAAe,MAAM,cAAc,CAAC;AAOpD,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,WAAW,CAAC,EACnD,QAAQ,EACR,UAAU,GAAG,EAAE,EACE;IACjB,wBAAwB;IACxB,MAAM,EAAE,eAAe,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE;QACpD,IAAI,QAAQ,CAAC,MAAM,IAAI,UAAU,EAAE,CAAC;YAClC,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;QACvD,CAAC;QACD,OAAO;YACL,eAAe,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC;YAC5C,WAAW,EAAE,QAAQ,CAAC,MAAM,GAAG,UAAU;SAC1C,CAAC;IACJ,CAAC,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;IAE3B,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC,aACpC,WAAW,GAAG,CAAC,IAAI,CAClB,KAAC,GAAG,IAAC,YAAY,EAAE,CAAC,YAClB,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,EAAC,MAAM,2BAClB,WAAW,4FACX,GACH,CACP,EACA,eAAe,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,CACnC,KAAC,OAAO,IAA4C,OAAO,EAAE,GAAG,IAAlD,QAAQ,CAAC,MAAM,GAAG,UAAU,GAAG,KAAK,CAAkB,CACrE,CAAC,IACE,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ interface SpinnerProps {
2
+ message?: string;
3
+ }
4
+ export declare function Spinner({ message }: SpinnerProps): import("react/jsx-runtime").JSX.Element;
5
+ export {};
6
+ //# sourceMappingURL=Spinner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Spinner.d.ts","sourceRoot":"","sources":["../../../../src/ui/components/Spinner.tsx"],"names":[],"mappings":"AAIA,UAAU,YAAY;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,OAAO,CAAC,EAAE,OAAkB,EAAE,EAAE,YAAY,2CAS3D"}
@@ -0,0 +1,7 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Box, Text } from "ink";
3
+ import InkSpinner from "ink-spinner";
4
+ export function Spinner({ message = "思考中..." }) {
5
+ return (_jsxs(Box, { children: [_jsx(Text, { color: "cyan", children: _jsx(InkSpinner, { type: "dots" }) }), _jsxs(Text, { color: "gray", children: [" ", message] })] }));
6
+ }
7
+ //# sourceMappingURL=Spinner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Spinner.js","sourceRoot":"","sources":["../../../../src/ui/components/Spinner.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,UAAU,MAAM,aAAa,CAAC;AAMrC,MAAM,UAAU,OAAO,CAAC,EAAE,OAAO,GAAG,QAAQ,EAAgB;IAC1D,OAAO,CACL,MAAC,GAAG,eACF,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,YAChB,KAAC,UAAU,IAAC,IAAI,EAAC,MAAM,GAAG,GACrB,EACP,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,kBAAG,OAAO,IAAQ,IAChC,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,11 @@
1
+ import React from "react";
2
+ interface StatusBarProps {
3
+ skills: string[];
4
+ tokens?: {
5
+ input: number;
6
+ output: number;
7
+ };
8
+ }
9
+ export declare const StatusBar: React.NamedExoticComponent<StatusBarProps>;
10
+ export {};
11
+ //# sourceMappingURL=StatusBar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StatusBar.d.ts","sourceRoot":"","sources":["../../../../src/ui/components/StatusBar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAe,MAAM,OAAO,CAAC;AAGpC,UAAU,cAAc;IACtB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CAC5C;AAED,eAAO,MAAM,SAAS,4CAoBpB,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { memo } from "react";
3
+ import { Box, Text } from "ink";
4
+ export const StatusBar = memo(function StatusBar({ skills, tokens }) {
5
+ return (_jsxs(Box, { paddingX: 1, justifyContent: "space-between", children: [_jsxs(Box, { children: [_jsx(Text, { color: "gray", children: "Skills: " }), skills.length > 0 ? (_jsx(Text, { color: "cyan", children: skills.join(", ") })) : (_jsx(Text, { color: "gray", children: "\u65E0" }))] }), tokens && (_jsx(Box, { children: _jsxs(Text, { color: "gray", children: ["Tokens: ", tokens.input.toLocaleString(), " in / ", tokens.output.toLocaleString(), " out"] }) }))] }));
6
+ });
7
+ //# sourceMappingURL=StatusBar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StatusBar.js","sourceRoot":"","sources":["../../../../src/ui/components/StatusBar.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAOhC,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,SAAS,CAAC,EAAE,MAAM,EAAE,MAAM,EAAkB;IACjF,OAAO,CACL,MAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,EAAE,cAAc,EAAC,eAAe,aAC9C,MAAC,GAAG,eACF,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,yBAAgB,EACjC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CACnB,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,YAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAQ,CAC9C,CAAC,CAAC,CAAC,CACF,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,uBAAS,CAC5B,IACG,EACL,MAAM,IAAI,CACT,KAAC,GAAG,cACF,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,yBACP,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,YAAQ,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,YACvE,GACH,CACP,IACG,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ export { Header } from "./Header.js";
2
+ export { Spinner } from "./Spinner.js";
3
+ export { Message, type MessageItem } from "./Message.js";
4
+ export { MessageList } from "./MessageList.js";
5
+ export { Composer } from "./Composer.js";
6
+ export { StatusBar } from "./StatusBar.js";
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ui/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,7 @@
1
+ export { Header } from "./Header.js";
2
+ export { Spinner } from "./Spinner.js";
3
+ export { Message } from "./Message.js";
4
+ export { MessageList } from "./MessageList.js";
5
+ export { Composer } from "./Composer.js";
6
+ export { StatusBar } from "./StatusBar.js";
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,OAAO,EAAoB,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC"}
@@ -7,9 +7,11 @@ export declare class ConversationManager {
7
7
  private conversations;
8
8
  private cwd?;
9
9
  private model?;
10
+ private canUseTool?;
10
11
  constructor(options?: {
11
12
  cwd?: string;
12
13
  model?: string;
14
+ canUseTool?: (toolName: string, input: any, conversationId: string) => Promise<any>;
13
15
  });
14
16
  /**
15
17
  * 获取或创建 conversation
@@ -1 +1 @@
1
- {"version":3,"file":"conversation-manager.d.ts","sourceRoot":"","sources":["../../../src/ui/conversation-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAE7D;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,aAAa,CAIN;IAEf,OAAO,CAAC,GAAG,CAAC,CAAS;IACrB,OAAO,CAAC,KAAK,CAAC,CAAS;gBAEX,OAAO,GAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAO;IAK1D;;OAEG;IACH,WAAW,CAAC,cAAc,EAAE,MAAM,GAAG;QACnC,KAAK,EAAE,iBAAiB,CAAC;QACzB,KAAK,EAAE,WAAW,CAAC;QACnB,eAAe,EAAE,eAAe,GAAG,IAAI,CAAC;KACzC;IAyBD;;OAEG;IACH,MAAM,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO;IAQvC;;OAEG;IACH,KAAK,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IAcnC;;OAEG;IACH,kBAAkB,CAAC,cAAc,EAAE,MAAM,EAAE,UAAU,EAAE,eAAe,GAAG,IAAI,GAAG,IAAI;IAOpF;;OAEG;IACH,KAAK,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IAQnC;;OAEG;IACH,wBAAwB,CAAC,cAAc,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,GAAG,IAAI;IAOlF;;OAEG;IACH,qBAAqB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IASnD;;;OAGG;IACH,OAAO,CAAC,aAAa,EAAE,KAAK,CAAC;QAC3B,eAAe,EAAE,MAAM,CAAC;QACxB,qBAAqB,EAAE,MAAM,CAAC;QAC9B,UAAU,EAAE,MAAM,CAAC;QACnB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAC,GAAG,IAAI;CAwBV"}
1
+ {"version":3,"file":"conversation-manager.d.ts","sourceRoot":"","sources":["../../../src/ui/conversation-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAG7D;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,aAAa,CAIN;IAEf,OAAO,CAAC,GAAG,CAAC,CAAS;IACrB,OAAO,CAAC,KAAK,CAAC,CAAS;IACvB,OAAO,CAAC,UAAU,CAAC,CAAyE;gBAEhF,OAAO,GAAE;QACnB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,cAAc,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;KAChF;IAMN;;OAEG;IACH,WAAW,CAAC,cAAc,EAAE,MAAM,GAAG;QACnC,KAAK,EAAE,iBAAiB,CAAC;QACzB,KAAK,EAAE,WAAW,CAAC;QACnB,eAAe,EAAE,eAAe,GAAG,IAAI,CAAC;KACzC;IA4BD;;OAEG;IACH,MAAM,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO;IAQvC;;OAEG;IACH,KAAK,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IAcnC;;OAEG;IACH,kBAAkB,CAAC,cAAc,EAAE,MAAM,EAAE,UAAU,EAAE,eAAe,GAAG,IAAI,GAAG,IAAI;IAOpF;;OAEG;IACH,KAAK,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IAQnC;;OAEG;IACH,wBAAwB,CAAC,cAAc,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,GAAG,IAAI;IAOlF;;OAEG;IACH,qBAAqB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IASnD;;;OAGG;IACH,OAAO,CAAC,aAAa,EAAE,KAAK,CAAC;QAC3B,eAAe,EAAE,MAAM,CAAC;QACxB,qBAAqB,EAAE,MAAM,CAAC;QAC9B,UAAU,EAAE,MAAM,CAAC;QACnB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAC,GAAG,IAAI;CA2BV"}
@@ -6,9 +6,11 @@ export class ConversationManager {
6
6
  conversations = new Map();
7
7
  cwd;
8
8
  model;
9
+ canUseTool;
9
10
  constructor(options = {}) {
10
11
  this.cwd = options.cwd;
11
12
  this.model = options.model;
13
+ this.canUseTool = options.canUseTool;
12
14
  }
13
15
  /**
14
16
  * 获取或创建 conversation
@@ -18,6 +20,9 @@ export class ConversationManager {
18
20
  const agent = new OptimaAgent({
19
21
  cwd: this.cwd,
20
22
  model: this.model,
23
+ canUseTool: this.canUseTool
24
+ ? (toolName, input) => this.canUseTool(toolName, input, conversationId)
25
+ : undefined,
21
26
  });
22
27
  const state = {
23
28
  conversation_id: conversationId,
@@ -107,6 +112,9 @@ export class ConversationManager {
107
112
  cwd: this.cwd,
108
113
  model: this.model,
109
114
  resumeSessionId: conv.claude_sdk_session_id,
115
+ canUseTool: this.canUseTool
116
+ ? (toolName, input) => this.canUseTool(toolName, input, conv.conversation_id)
117
+ : undefined,
110
118
  });
111
119
  const state = {
112
120
  conversation_id: conv.conversation_id,
@@ -1 +1 @@
1
- {"version":3,"file":"conversation-manager.js","sourceRoot":"","sources":["../../../src/ui/conversation-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"conversation-manager.js","sourceRoot":"","sources":["../../../src/ui/conversation-manager.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- export type InputMessage = InitInputMessage | MessageInputMessage | AbortInputMessage | ResetConversationInputMessage | DeleteConversationInputMessage | RestoreConversationsInputMessage;
1
+ export type InputMessage = InitInputMessage | MessageInputMessage | AbortInputMessage | AnswerQuestionInputMessage | ResetConversationInputMessage | DeleteConversationInputMessage | RestoreConversationsInputMessage;
2
2
  export interface InitInputMessage {
3
3
  type: "init";
4
4
  sessionId: string;
@@ -15,6 +15,11 @@ export interface AbortInputMessage {
15
15
  sessionId: string;
16
16
  conversation_id: string;
17
17
  }
18
+ export interface AnswerQuestionInputMessage {
19
+ type: "answer_question";
20
+ request_id: string;
21
+ answers: Record<string, string>;
22
+ }
18
23
  export interface ResetConversationInputMessage {
19
24
  type: "reset_conversation";
20
25
  conversation_id: string;
@@ -32,7 +37,7 @@ export interface RestoreConversationsInputMessage {
32
37
  last_message_at: string;
33
38
  }>;
34
39
  }
35
- export type OutputEvent = InitEvent | ThinkingEvent | ContentEvent | TextDeltaEvent | ToolCallEvent | ToolResultEvent | FinishEvent | ErrorEvent | InfoEvent | ConversationUpdateEvent;
40
+ export type OutputEvent = InitEvent | ThinkingEvent | ContentEvent | TextDeltaEvent | ToolCallEvent | ToolResultEvent | AskQuestionEvent | FinishEvent | ErrorEvent | InfoEvent | ConversationUpdateEvent;
36
41
  export interface InitEvent {
37
42
  type: "init";
38
43
  conversation_id?: string;
@@ -79,6 +84,20 @@ export interface ToolResultEvent {
79
84
  error?: string;
80
85
  };
81
86
  }
87
+ export interface AskQuestionEvent {
88
+ type: "ask_question";
89
+ conversation_id?: string;
90
+ request_id: string;
91
+ questions: Array<{
92
+ question: string;
93
+ header: string;
94
+ options: Array<{
95
+ label: string;
96
+ description: string;
97
+ }>;
98
+ multiSelect: boolean;
99
+ }>;
100
+ }
82
101
  export interface FinishEvent {
83
102
  type: "finish";
84
103
  conversation_id?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"headless-types.d.ts","sourceRoot":"","sources":["../../../src/ui/headless-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"headless-types.d.ts","sourceRoot":"","sources":["../../../src/ui/headless-types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"headless.d.ts","sourceRoot":"","sources":["../../../src/ui/headless.ts"],"names":[],"mappings":"AAYA;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,GAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAO,iBA8TrF"}
1
+ {"version":3,"file":"headless.d.ts","sourceRoot":"","sources":["../../../src/ui/headless.ts"],"names":[],"mappings":"AAcA;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,GAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAO,iBA0ZrF"}
@@ -7,7 +7,61 @@ import { ConversationManager } from "./conversation-manager.js";
7
7
  * 此函数会阻塞,持续监听 stdin,直到进程被终止
8
8
  */
9
9
  export async function startHeadlessMode(options = {}) {
10
- const conversationManager = new ConversationManager(options);
10
+ // 待处理的问题(用于 AskUserQuestion 工具)
11
+ // request_id -> { resolve, reject, timeout }
12
+ const pendingQuestions = new Map();
13
+ // 生成唯一的 request_id
14
+ let requestIdCounter = 0;
15
+ function generateRequestId() {
16
+ return `ask_question_${Date.now()}_${++requestIdCounter}`;
17
+ }
18
+ // canUseTool 回调:处理 AskUserQuestion 工具
19
+ const canUseTool = async (toolName, input, conversationId) => {
20
+ if (toolName === "AskUserQuestion") {
21
+ // 生成唯一 request_id
22
+ const requestId = generateRequestId();
23
+ // 发送 ask_question 事件
24
+ sendOutput({
25
+ type: "ask_question",
26
+ conversation_id: conversationId,
27
+ request_id: requestId,
28
+ questions: input.questions,
29
+ });
30
+ // 等待前端回复(60s 超时)
31
+ return new Promise((resolve, reject) => {
32
+ const timeout = setTimeout(() => {
33
+ pendingQuestions.delete(requestId);
34
+ reject(new Error("Question timeout (60s)"));
35
+ }, 60000);
36
+ pendingQuestions.set(requestId, {
37
+ resolve: (answers) => {
38
+ clearTimeout(timeout);
39
+ resolve({
40
+ behavior: "allow",
41
+ updatedInput: { questions: input.questions, answers },
42
+ });
43
+ },
44
+ reject: (error) => {
45
+ clearTimeout(timeout);
46
+ reject(error);
47
+ },
48
+ timeout,
49
+ });
50
+ }).catch((error) => {
51
+ // 超时或用户取消,返回 deny
52
+ return {
53
+ behavior: "deny",
54
+ message: error instanceof Error ? error.message : "Question cancelled",
55
+ };
56
+ });
57
+ }
58
+ // 其他工具直接放行
59
+ return { behavior: "allow", updatedInput: input };
60
+ };
61
+ const conversationManager = new ConversationManager({
62
+ ...options,
63
+ canUseTool,
64
+ });
11
65
  // 输出 JSON 消息到 stdout
12
66
  function sendOutput(event) {
13
67
  console.log(JSON.stringify(event));
@@ -144,6 +198,24 @@ export async function startHeadlessMode(options = {}) {
144
198
  });
145
199
  break;
146
200
  }
201
+ case "answer_question": {
202
+ const answerInput = input;
203
+ const pending = pendingQuestions.get(answerInput.request_id);
204
+ if (pending) {
205
+ pendingQuestions.delete(answerInput.request_id);
206
+ pending.resolve(answerInput.answers);
207
+ }
208
+ else {
209
+ sendOutput({
210
+ type: "error",
211
+ error: {
212
+ message: `Question request ${answerInput.request_id} not found or already answered`,
213
+ code: "REQUEST_NOT_FOUND",
214
+ },
215
+ });
216
+ }
217
+ break;
218
+ }
147
219
  }
148
220
  }
149
221
  // 处理用户消息
@@ -1 +1 @@
1
- {"version":3,"file":"headless.js","sourceRoot":"","sources":["../../../src/ui/headless.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"headless.js","sourceRoot":"","sources":["../../../src/ui/headless.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../../src/ui/stream.ts"],"names":[],"mappings":"AAuNA,wBAAgB,eAAe,CAAC,GAAG,CAAC,EAAE,MAAM,QA05B3C"}
1
+ {"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../../src/ui/stream.ts"],"names":[],"mappings":"AA0OA,wBAAgB,eAAe,CAAC,GAAG,CAAC,EAAE,MAAM,QAumC3C"}