@myskyline_ai/ccdebug 0.2.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 (61) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +129 -0
  3. package/dist/cli.d.ts +9 -0
  4. package/dist/cli.d.ts.map +1 -0
  5. package/dist/cli.js +674 -0
  6. package/dist/html-generator.d.ts +24 -0
  7. package/dist/html-generator.d.ts.map +1 -0
  8. package/dist/html-generator.js +141 -0
  9. package/dist/index-generator.d.ts +29 -0
  10. package/dist/index-generator.d.ts.map +1 -0
  11. package/dist/index-generator.js +271 -0
  12. package/dist/index.d.ts +7 -0
  13. package/dist/index.d.ts.map +1 -0
  14. package/dist/index.js +28 -0
  15. package/dist/interceptor-loader.js +59 -0
  16. package/dist/interceptor.d.ts +46 -0
  17. package/dist/interceptor.d.ts.map +1 -0
  18. package/dist/interceptor.js +555 -0
  19. package/dist/log-file-manager.d.ts +15 -0
  20. package/dist/log-file-manager.d.ts.map +1 -0
  21. package/dist/log-file-manager.js +41 -0
  22. package/dist/shared-conversation-processor.d.ts +114 -0
  23. package/dist/shared-conversation-processor.d.ts.map +1 -0
  24. package/dist/shared-conversation-processor.js +663 -0
  25. package/dist/token-extractor.js +28 -0
  26. package/dist/types.d.ts +95 -0
  27. package/dist/types.d.ts.map +1 -0
  28. package/dist/types.js +3 -0
  29. package/frontend/dist/index.global.js +1522 -0
  30. package/frontend/dist/styles.css +985 -0
  31. package/frontend/template.html +19 -0
  32. package/package.json +83 -0
  33. package/web/debug.html +14 -0
  34. package/web/dist/assets/index-BIP9r3RA.js +48 -0
  35. package/web/dist/assets/index-BIP9r3RA.js.map +1 -0
  36. package/web/dist/assets/index-De3gn-G-.css +1 -0
  37. package/web/dist/favicon.svg +4 -0
  38. package/web/dist/index.html +15 -0
  39. package/web/index.html +14 -0
  40. package/web/package.json +47 -0
  41. package/web/server/conversation-parser.d.ts +47 -0
  42. package/web/server/conversation-parser.d.ts.map +1 -0
  43. package/web/server/conversation-parser.js +564 -0
  44. package/web/server/conversation-parser.js.map +1 -0
  45. package/web/server/index.d.ts +16 -0
  46. package/web/server/index.d.ts.map +1 -0
  47. package/web/server/index.js +60 -0
  48. package/web/server/index.js.map +1 -0
  49. package/web/server/log-file-manager.d.ts +98 -0
  50. package/web/server/log-file-manager.d.ts.map +1 -0
  51. package/web/server/log-file-manager.js +512 -0
  52. package/web/server/log-file-manager.js.map +1 -0
  53. package/web/server/src/types/index.d.ts +68 -0
  54. package/web/server/src/types/index.d.ts.map +1 -0
  55. package/web/server/src/types/index.js +3 -0
  56. package/web/server/src/types/index.js.map +1 -0
  57. package/web/server/test-path.js +48 -0
  58. package/web/server/web-server.d.ts +41 -0
  59. package/web/server/web-server.d.ts.map +1 -0
  60. package/web/server/web-server.js +807 -0
  61. package/web/server/web-server.js.map +1 -0
@@ -0,0 +1,4 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
2
+ <circle cx="12" cy="12" r="10"/>
3
+ <polyline points="12,6 12,12 16,14"/>
4
+ </svg>
@@ -0,0 +1,15 @@
1
+ <!DOCTYPE html>
2
+ <html lang="zh-CN">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>CCDebug 时间线</title>
7
+ <meta name="description" content="CCDebug 对话时间线可视化工具">
8
+ <link rel="icon" type="image/svg+xml" href="/favicon.svg">
9
+ <script type="module" crossorigin src="/assets/index-BIP9r3RA.js"></script>
10
+ <link rel="stylesheet" crossorigin href="/assets/index-De3gn-G-.css">
11
+ </head>
12
+ <body>
13
+ <div id="app"></div>
14
+ </body>
15
+ </html>
package/web/index.html ADDED
@@ -0,0 +1,14 @@
1
+ <!DOCTYPE html>
2
+ <html lang="zh-CN">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>CCDebug 时间线</title>
7
+ <meta name="description" content="CCDebug 对话时间线可视化工具">
8
+ <link rel="icon" type="image/svg+xml" href="/favicon.svg">
9
+ </head>
10
+ <body>
11
+ <div id="app"></div>
12
+ <script type="module" src="/src/main.ts"></script>
13
+ </body>
14
+ </html>
@@ -0,0 +1,47 @@
1
+ {
2
+ "name": "ccdebug-web",
3
+ "version": "1.0.0",
4
+ "description": "Web timeline interface for Claude Code Debug",
5
+ "type": "module",
6
+ "files": [
7
+ "dist/**/*",
8
+ "server/**/*",
9
+ "public/**/*",
10
+ "index.html",
11
+ "vite.config.*",
12
+ "tsconfig.*",
13
+ "!node_modules",
14
+ "!src",
15
+ "!.DS_Store",
16
+ "!.gitignore"
17
+ ],
18
+ "scripts": {
19
+ "dev": "vite --host --port 3002",
20
+ "build": "vite build",
21
+ "build:check": "vue-tsc --noEmit && vite build",
22
+ "preview": "vite preview",
23
+ "serve": "node dist/server.js"
24
+ },
25
+ "dependencies": {
26
+ "@arco-design/web-vue": "^2.55.0",
27
+ "axios": "^1.6.0",
28
+ "chokidar": "^3.5.3",
29
+ "cors": "^2.8.5",
30
+ "express": "^4.18.2",
31
+ "pinia": "^2.1.7",
32
+ "socket.io": "^4.7.4",
33
+ "socket.io-client": "^4.7.4",
34
+ "vue": "^3.4.0",
35
+ "vue-router": "^4.5.1",
36
+ "node-fetch": "^3.3"
37
+ },
38
+ "devDependencies": {
39
+ "@types/cors": "^2.8.17",
40
+ "@types/express": "^4.17.21",
41
+ "@types/node": "^20.10.0",
42
+ "@vitejs/plugin-vue": "^4.5.0",
43
+ "typescript": "^5.2.0",
44
+ "vite": "^5.0.0",
45
+ "vue-tsc": "^1.8.25"
46
+ }
47
+ }
@@ -0,0 +1,47 @@
1
+ export declare class ConversationParser {
2
+ private logDir;
3
+ /**
4
+ * 设置日志目录
5
+ * @param logDir 日志目录路径
6
+ */
7
+ setLogDirectory(logDir: string): void;
8
+ /**
9
+ * 从日志目录推断项目目录
10
+ * @returns 项目目录路径
11
+ */
12
+ private inferProjectDirectory;
13
+ /**
14
+ * 从cc日志目录加载对话日志
15
+ * @param fileId 文件ID
16
+ * @returns 对话数据
17
+ */
18
+ parseFile(fileId: string): Promise<any>;
19
+ /**
20
+ * 解析JSONL文件内容为对话数据
21
+ * @param lines JSONL文件的行数组
22
+ * @returns 对话数据数组
23
+ */
24
+ parseConversations(lines: string[]): any[];
25
+ private isConversationStart;
26
+ private generateConversationId;
27
+ private parseStep;
28
+ private determineStepType;
29
+ private extractContent;
30
+ private extractUserMessageContent;
31
+ private extractAssistantMessageContent;
32
+ private extractAssistantThinkingContent;
33
+ private extractToolCallContent;
34
+ private extractToolResultContent;
35
+ private extractAgentChildContent;
36
+ private extractAgentEndContent;
37
+ private extractFallbackContent;
38
+ private extractMetadata;
39
+ /**
40
+ * 根据文件ID获取对话数据
41
+ * @param fileId 文件ID
42
+ * @param lines 文件内容行
43
+ * @returns 对话数据数组
44
+ */
45
+ getConversationsByFileId(fileId: string, lines: string[]): any[];
46
+ }
47
+ //# sourceMappingURL=conversation-parser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conversation-parser.d.ts","sourceRoot":"","sources":["conversation-parser.ts"],"names":[],"mappings":"AASA,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAAc;IAE5B;;;OAGG;IACH,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAIrC;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAiD7B;;;;OAIG;IACG,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAkD7C;;;;OAIG;IACH,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,GAAG,EAAE;IA4C1C,OAAO,CAAC,mBAAmB;IAoB3B,OAAO,CAAC,sBAAsB;IAO9B,OAAO,CAAC,SAAS;IAuEjB,OAAO,CAAC,iBAAiB;IAyCzB,OAAO,CAAC,cAAc;IAkCtB,OAAO,CAAC,yBAAyB;IAqBjC,OAAO,CAAC,8BAA8B;IA+BtC,OAAO,CAAC,+BAA+B;IAkCvC,OAAO,CAAC,sBAAsB;IA0C9B,OAAO,CAAC,wBAAwB;IA+DhC,OAAO,CAAC,wBAAwB;IAOhC,OAAO,CAAC,sBAAsB;IAO9B,OAAO,CAAC,sBAAsB;IAoB9B,OAAO,CAAC,eAAe;IAiDvB;;;;;OAKG;IACH,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,GAAG,EAAE;CASjE"}