@poping/yome 0.0.2

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 (156) hide show
  1. package/README.md +54 -0
  2. package/bin/yome.js +2 -0
  3. package/dist/agent.d.ts +43 -0
  4. package/dist/agent.js +140 -0
  5. package/dist/agent.js.map +1 -0
  6. package/dist/config.d.ts +41 -0
  7. package/dist/config.js +108 -0
  8. package/dist/config.js.map +1 -0
  9. package/dist/context.d.ts +1 -0
  10. package/dist/context.js +101 -0
  11. package/dist/context.js.map +1 -0
  12. package/dist/index.d.ts +1 -0
  13. package/dist/index.js +65 -0
  14. package/dist/index.js.map +1 -0
  15. package/dist/llm.d.ts +13 -0
  16. package/dist/llm.js +317 -0
  17. package/dist/llm.js.map +1 -0
  18. package/dist/loops/chain.d.ts +15 -0
  19. package/dist/loops/chain.js +105 -0
  20. package/dist/loops/chain.js.map +1 -0
  21. package/dist/loops/evaluator.d.ts +12 -0
  22. package/dist/loops/evaluator.js +100 -0
  23. package/dist/loops/evaluator.js.map +1 -0
  24. package/dist/loops/index.d.ts +12 -0
  25. package/dist/loops/index.js +39 -0
  26. package/dist/loops/index.js.map +1 -0
  27. package/dist/loops/orchestrator.d.ts +13 -0
  28. package/dist/loops/orchestrator.js +107 -0
  29. package/dist/loops/orchestrator.js.map +1 -0
  30. package/dist/loops/parallel.d.ts +6 -0
  31. package/dist/loops/parallel.js +48 -0
  32. package/dist/loops/parallel.js.map +1 -0
  33. package/dist/loops/route.d.ts +13 -0
  34. package/dist/loops/route.js +88 -0
  35. package/dist/loops/route.js.map +1 -0
  36. package/dist/loops/simple.d.ts +6 -0
  37. package/dist/loops/simple.js +46 -0
  38. package/dist/loops/simple.js.map +1 -0
  39. package/dist/loops/types.d.ts +32 -0
  40. package/dist/loops/types.js +9 -0
  41. package/dist/loops/types.js.map +1 -0
  42. package/dist/permissions/checker.d.ts +18 -0
  43. package/dist/permissions/checker.js +89 -0
  44. package/dist/permissions/checker.js.map +1 -0
  45. package/dist/permissions/index.d.ts +4 -0
  46. package/dist/permissions/index.js +4 -0
  47. package/dist/permissions/index.js.map +1 -0
  48. package/dist/permissions/loader.d.ts +22 -0
  49. package/dist/permissions/loader.js +104 -0
  50. package/dist/permissions/loader.js.map +1 -0
  51. package/dist/permissions/ruleParser.d.ts +23 -0
  52. package/dist/permissions/ruleParser.js +59 -0
  53. package/dist/permissions/ruleParser.js.map +1 -0
  54. package/dist/permissions/types.d.ts +37 -0
  55. package/dist/permissions/types.js +2 -0
  56. package/dist/permissions/types.js.map +1 -0
  57. package/dist/sessions.d.ts +20 -0
  58. package/dist/sessions.js +119 -0
  59. package/dist/sessions.js.map +1 -0
  60. package/dist/skills/index.d.ts +2 -0
  61. package/dist/skills/index.js +2 -0
  62. package/dist/skills/index.js.map +1 -0
  63. package/dist/skills/loader.d.ts +4 -0
  64. package/dist/skills/loader.js +125 -0
  65. package/dist/skills/loader.js.map +1 -0
  66. package/dist/skills/types.d.ts +22 -0
  67. package/dist/skills/types.js +2 -0
  68. package/dist/skills/types.js.map +1 -0
  69. package/dist/subagent/agentTool.d.ts +7 -0
  70. package/dist/subagent/agentTool.js +121 -0
  71. package/dist/subagent/agentTool.js.map +1 -0
  72. package/dist/subagent/builtinAgents.d.ts +3 -0
  73. package/dist/subagent/builtinAgents.js +23 -0
  74. package/dist/subagent/builtinAgents.js.map +1 -0
  75. package/dist/subagent/index.d.ts +6 -0
  76. package/dist/subagent/index.js +5 -0
  77. package/dist/subagent/index.js.map +1 -0
  78. package/dist/subagent/loadAgents.d.ts +2 -0
  79. package/dist/subagent/loadAgents.js +98 -0
  80. package/dist/subagent/loadAgents.js.map +1 -0
  81. package/dist/subagent/runAgent.d.ts +18 -0
  82. package/dist/subagent/runAgent.js +115 -0
  83. package/dist/subagent/runAgent.js.map +1 -0
  84. package/dist/subagent/types.d.ts +20 -0
  85. package/dist/subagent/types.js +2 -0
  86. package/dist/subagent/types.js.map +1 -0
  87. package/dist/toggleState.d.ts +6 -0
  88. package/dist/toggleState.js +58 -0
  89. package/dist/toggleState.js.map +1 -0
  90. package/dist/tools/bash.d.ts +2 -0
  91. package/dist/tools/bash.js +78 -0
  92. package/dist/tools/bash.js.map +1 -0
  93. package/dist/tools/edit.d.ts +2 -0
  94. package/dist/tools/edit.js +103 -0
  95. package/dist/tools/edit.js.map +1 -0
  96. package/dist/tools/glob.d.ts +2 -0
  97. package/dist/tools/glob.js +44 -0
  98. package/dist/tools/glob.js.map +1 -0
  99. package/dist/tools/grep.d.ts +2 -0
  100. package/dist/tools/grep.js +89 -0
  101. package/dist/tools/grep.js.map +1 -0
  102. package/dist/tools/index.d.ts +15 -0
  103. package/dist/tools/index.js +99 -0
  104. package/dist/tools/index.js.map +1 -0
  105. package/dist/tools/ls.d.ts +2 -0
  106. package/dist/tools/ls.js +47 -0
  107. package/dist/tools/ls.js.map +1 -0
  108. package/dist/tools/read.d.ts +2 -0
  109. package/dist/tools/read.js +52 -0
  110. package/dist/tools/read.js.map +1 -0
  111. package/dist/tools/write.d.ts +2 -0
  112. package/dist/tools/write.js +46 -0
  113. package/dist/tools/write.js.map +1 -0
  114. package/dist/types.d.ts +82 -0
  115. package/dist/types.js +13 -0
  116. package/dist/types.js.map +1 -0
  117. package/dist/ui/AgentPicker.d.ts +12 -0
  118. package/dist/ui/AgentPicker.js +32 -0
  119. package/dist/ui/AgentPicker.js.map +1 -0
  120. package/dist/ui/App.d.ts +6 -0
  121. package/dist/ui/App.js +327 -0
  122. package/dist/ui/App.js.map +1 -0
  123. package/dist/ui/Banner.d.ts +1 -0
  124. package/dist/ui/Banner.js +14 -0
  125. package/dist/ui/Banner.js.map +1 -0
  126. package/dist/ui/InputBar.d.ts +17 -0
  127. package/dist/ui/InputBar.js +93 -0
  128. package/dist/ui/InputBar.js.map +1 -0
  129. package/dist/ui/Markdown.d.ts +4 -0
  130. package/dist/ui/Markdown.js +97 -0
  131. package/dist/ui/Markdown.js.map +1 -0
  132. package/dist/ui/MessageList.d.ts +17 -0
  133. package/dist/ui/MessageList.js +50 -0
  134. package/dist/ui/MessageList.js.map +1 -0
  135. package/dist/ui/ModelPicker.d.ts +9 -0
  136. package/dist/ui/ModelPicker.js +70 -0
  137. package/dist/ui/ModelPicker.js.map +1 -0
  138. package/dist/ui/PermissionPrompt.d.ts +10 -0
  139. package/dist/ui/PermissionPrompt.js +37 -0
  140. package/dist/ui/PermissionPrompt.js.map +1 -0
  141. package/dist/ui/SessionPicker.d.ts +8 -0
  142. package/dist/ui/SessionPicker.js +64 -0
  143. package/dist/ui/SessionPicker.js.map +1 -0
  144. package/dist/ui/Spinner.d.ts +3 -0
  145. package/dist/ui/Spinner.js +15 -0
  146. package/dist/ui/Spinner.js.map +1 -0
  147. package/dist/ui/TogglePicker.d.ts +16 -0
  148. package/dist/ui/TogglePicker.js +35 -0
  149. package/dist/ui/TogglePicker.js.map +1 -0
  150. package/dist/ui/ToolResult.d.ts +6 -0
  151. package/dist/ui/ToolResult.js +59 -0
  152. package/dist/ui/ToolResult.js.map +1 -0
  153. package/dist/utils/imagePaste.d.ts +12 -0
  154. package/dist/utils/imagePaste.js +54 -0
  155. package/dist/utils/imagePaste.js.map +1 -0
  156. package/package.json +44 -0
@@ -0,0 +1,6 @@
1
+ interface ToolResultProps {
2
+ name: string;
3
+ result: string;
4
+ }
5
+ export declare function ToolResult({ name, result }: ToolResultProps): import("react/jsx-runtime").JSX.Element | null;
6
+ export {};
@@ -0,0 +1,59 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Box, Text } from 'ink';
3
+ function DiffView({ result }) {
4
+ const allLines = result.split('\n');
5
+ const diffLines = allLines.slice(2);
6
+ const maxShow = 30;
7
+ const truncated = diffLines.length > maxShow;
8
+ const shown = truncated ? diffLines.slice(0, maxShow) : diffLines;
9
+ let maxNum = 0;
10
+ for (const line of shown) {
11
+ const m = line.match(/^@@[^:]*:(\d+):/);
12
+ if (m)
13
+ maxNum = Math.max(maxNum, Number(m[1]));
14
+ }
15
+ const numWidth = Math.max(String(maxNum).length, 3);
16
+ const cols = (process.stdout.columns || 80) - 4;
17
+ return (_jsxs(Box, { flexDirection: "column", marginLeft: 4, children: [_jsx(Text, { dimColor: true, children: '─'.repeat(cols) }), shown.map((line, i) => {
18
+ const ctxMatch = line.match(/^@@CTX:(\d+):(.*)/);
19
+ const addMatch = line.match(/^@@\+:(\d+):(.*)/);
20
+ const rmMatch = line.match(/^@@-:(\d+):(.*)/);
21
+ if (addMatch) {
22
+ const num = addMatch[1].padStart(numWidth);
23
+ return (_jsx(Box, { children: _jsx(Text, { color: "green", children: ` ${num} + ${addMatch[2] ?? ''}` }) }, i));
24
+ }
25
+ if (rmMatch) {
26
+ const num = rmMatch[1].padStart(numWidth);
27
+ return (_jsx(Box, { children: _jsx(Text, { color: "red", children: ` ${num} - ${rmMatch[2] ?? ''}` }) }, i));
28
+ }
29
+ if (ctxMatch) {
30
+ const num = ctxMatch[1].padStart(numWidth);
31
+ return (_jsx(Box, { children: _jsx(Text, { dimColor: true, children: ` ${num} ${ctxMatch[2] ?? ''}` }) }, i));
32
+ }
33
+ return _jsx(Text, { dimColor: true, children: ` ${line}` }, i);
34
+ }), _jsx(Text, { dimColor: true, children: '─'.repeat(cols) }), truncated && _jsx(Text, { dimColor: true, children: ` … ${diffLines.length - maxShow} more lines` })] }));
35
+ }
36
+ export function ToolResult({ name, result }) {
37
+ // Read, LS, Grep, Glob, Bash — don't show content to user (it's for the AI)
38
+ if (name === 'Read' || name === 'LS' || name === 'Grep' || name === 'Glob') {
39
+ return null;
40
+ }
41
+ // Bash — show a brief summary
42
+ if (name === 'Bash') {
43
+ const lines = result.split('\n');
44
+ const lineCount = lines.length;
45
+ if (result.startsWith('Exit code:')) {
46
+ return (_jsx(Box, { marginLeft: 4, children: _jsx(Text, { color: "red", dimColor: true, children: result.split('\n')[0] }) }));
47
+ }
48
+ if (lineCount > 3) {
49
+ return (_jsx(Box, { marginLeft: 4, children: _jsx(Text, { dimColor: true, children: `(${lineCount} lines of output)` }) }));
50
+ }
51
+ return null;
52
+ }
53
+ // Edit/Write — show diff
54
+ if (result.startsWith('@@FILE:')) {
55
+ return _jsx(DiffView, { result: result });
56
+ }
57
+ return null;
58
+ }
59
+ //# sourceMappingURL=ToolResult.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToolResult.js","sourceRoot":"","sources":["../../src/ui/ToolResult.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ export interface PastedImage {
2
+ base64: string;
3
+ mediaType: string;
4
+ }
5
+ /**
6
+ * Check if clipboard contains an image (macOS only).
7
+ */
8
+ export declare function hasImageInClipboard(): boolean;
9
+ /**
10
+ * Extract image from clipboard and return as base64 (macOS only).
11
+ */
12
+ export declare function getImageFromClipboard(): PastedImage | null;
@@ -0,0 +1,54 @@
1
+ import { execSync } from 'child_process';
2
+ import { readFileSync, unlinkSync } from 'fs';
3
+ import { join } from 'path';
4
+ import { tmpdir } from 'os';
5
+ const SCREENSHOT_PATH = join(tmpdir(), 'yome_clipboard_image.png');
6
+ /**
7
+ * Check if clipboard contains an image (macOS only).
8
+ */
9
+ export function hasImageInClipboard() {
10
+ if (process.platform !== 'darwin')
11
+ return false;
12
+ try {
13
+ execSync("osascript -e 'the clipboard as «class PNGf»'", { stdio: 'pipe' });
14
+ return true;
15
+ }
16
+ catch {
17
+ return false;
18
+ }
19
+ }
20
+ /**
21
+ * Extract image from clipboard and return as base64 (macOS only).
22
+ */
23
+ export function getImageFromClipboard() {
24
+ if (process.platform !== 'darwin')
25
+ return null;
26
+ try {
27
+ execSync(`osascript -e 'set png_data to (the clipboard as «class PNGf»)' -e 'set fp to open for access POSIX file "${SCREENSHOT_PATH}" with write permission' -e 'write png_data to fp' -e 'close access fp'`, { stdio: 'pipe' });
28
+ const buffer = readFileSync(SCREENSHOT_PATH);
29
+ try {
30
+ unlinkSync(SCREENSHOT_PATH);
31
+ }
32
+ catch { }
33
+ if (buffer.length === 0)
34
+ return null;
35
+ const base64 = buffer.toString('base64');
36
+ const mediaType = detectMediaType(buffer);
37
+ return { base64, mediaType };
38
+ }
39
+ catch {
40
+ return null;
41
+ }
42
+ }
43
+ function detectMediaType(buffer) {
44
+ if (buffer[0] === 0x89 && buffer[1] === 0x50)
45
+ return 'image/png';
46
+ if (buffer[0] === 0xff && buffer[1] === 0xd8)
47
+ return 'image/jpeg';
48
+ if (buffer[0] === 0x47 && buffer[1] === 0x49)
49
+ return 'image/gif';
50
+ if (buffer[0] === 0x52 && buffer[1] === 0x49)
51
+ return 'image/webp';
52
+ return 'image/png';
53
+ }
54
+ //# sourceMappingURL=imagePaste.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"imagePaste.js","sourceRoot":"","sources":["../../src/utils/imagePaste.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC;AAO5B,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,0BAA0B,CAAC,CAAC;AAEnE;;GAEG;AACH,MAAM,UAAU,mBAAmB;IACjC,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAChD,IAAI,CAAC;QACH,QAAQ,CAAC,8CAA8C,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QAC5E,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB;IACnC,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC/C,IAAI,CAAC;QACH,QAAQ,CACN,4GAA4G,eAAe,yEAAyE,EACpM,EAAE,KAAK,EAAE,MAAM,EAAE,CAClB,CAAC;QACF,MAAM,MAAM,GAAG,YAAY,CAAC,eAAe,CAAC,CAAC;QAC7C,IAAI,CAAC;YAAC,UAAU,CAAC,eAAe,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;QAC7C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAErC,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACzC,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;QAC1C,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,MAAc;IACrC,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI;QAAE,OAAO,WAAW,CAAC;IACjE,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI;QAAE,OAAO,YAAY,CAAC;IAClE,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI;QAAE,OAAO,WAAW,CAAC;IACjE,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI;QAAE,OAAO,YAAY,CAAC;IAClE,OAAO,WAAW,CAAC;AACrB,CAAC"}
package/package.json ADDED
@@ -0,0 +1,44 @@
1
+ {
2
+ "name": "@poping/yome",
3
+ "version": "0.0.2",
4
+ "description": "Yome CLI — AI coding agent",
5
+ "type": "module",
6
+ "bin": {
7
+ "yome": "bin/yome.js"
8
+ },
9
+ "files": [
10
+ "bin",
11
+ "dist"
12
+ ],
13
+ "scripts": {
14
+ "build": "tsc",
15
+ "dev": "bun --watch src/index.tsx",
16
+ "start": "node bin/yome.mjs",
17
+ "prepublishOnly": "npm run build"
18
+ },
19
+ "engines": {
20
+ "node": ">=18"
21
+ },
22
+ "keywords": [
23
+ "cli",
24
+ "ai",
25
+ "coding",
26
+ "agent",
27
+ "yome"
28
+ ],
29
+ "license": "MIT",
30
+ "dependencies": {
31
+ "fast-glob": "^3.3.2",
32
+ "ink": "^5.1.0",
33
+ "ink-text-input": "^6.0.0",
34
+ "marked": "^17.0.6",
35
+ "meow": "^13.0.0",
36
+ "react": "^18.3.1"
37
+ },
38
+ "devDependencies": {
39
+ "@types/bun": "latest",
40
+ "@types/node": "^20.14.0",
41
+ "@types/react": "^18.3.3",
42
+ "typescript": "^5.5.0"
43
+ }
44
+ }