package.json 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. {
  2. "name": "copy-ai-ctx",
  3. "displayName": "Copy AI Ctx",
  4. "description": "复制上下文供AI助手使用 —— 复制文件、内容的引用信息",
  5. "version": "0.3.0",
  6. "publisher": "fivesay",
  7. "engines": {
  8. "vscode": "^1.85.0"
  9. },
  10. "categories": [
  11. "Other"
  12. ],
  13. "keywords": [
  14. "cpai",
  15. "ai",
  16. "context",
  17. "copy",
  18. "clipboard",
  19. "chatgpt",
  20. "claude",
  21. "pi"
  22. ],
  23. "activationEvents": [
  24. "onCommand:copy-ai-ctx.copySelection",
  25. "onCommand:copy-ai-ctx.copyFile",
  26. "onCommand:copy-ai-ctx.copySelectedFiles",
  27. "onCommand:copy-ai-ctx.copyMultiFiles"
  28. ],
  29. "main": "./dist/extension.js",
  30. "contributes": {
  31. "commands": [
  32. {
  33. "command": "copy-ai-ctx.copySelection",
  34. "title": "Copy to AI: 选中区域"
  35. },
  36. {
  37. "command": "copy-ai-ctx.copyFile",
  38. "title": "Copy to AI: 当前文件"
  39. },
  40. {
  41. "command": "copy-ai-ctx.copySelectedFiles",
  42. "title": "Copy to AI: 单选"
  43. },
  44. {
  45. "command": "copy-ai-ctx.copyMultiFiles",
  46. "title": "Copy to AI: 多选"
  47. }
  48. ],
  49. "menus": {
  50. "editor/context": [
  51. {
  52. "command": "copy-ai-ctx.copySelection",
  53. "when": "editorHasSelection",
  54. "group": "9_cutcopypaste@10"
  55. },
  56. {
  57. "command": "copy-ai-ctx.copyFile",
  58. "when": "!editorHasSelection",
  59. "group": "9_cutcopypaste@10"
  60. }
  61. ],
  62. "explorer/context": [
  63. {
  64. "command": "copy-ai-ctx.copyMultiFiles",
  65. "when": "listMultiSelection && explorerViewletVisible",
  66. "group": "9_cutcopypaste@10"
  67. },
  68. {
  69. "command": "copy-ai-ctx.copySelectedFiles",
  70. "when": "!listMultiSelection",
  71. "group": "9_cutcopypaste@10",
  72. "title": "Copy to AI: 单选"
  73. }
  74. ]
  75. },
  76. "keybindings": [
  77. {
  78. "key": "ctrl+alt+c",
  79. "mac": "cmd+alt+c",
  80. "command": "copy-ai-ctx.copySelection",
  81. "when": "editorHasSelection"
  82. },
  83. {
  84. "key": "ctrl+alt+c",
  85. "mac": "cmd+alt+c",
  86. "command": "copy-ai-ctx.copyFile",
  87. "when": "!editorHasSelection && editorFocus"
  88. },
  89. {
  90. "key": "ctrl+alt+c",
  91. "mac": "cmd+alt+c",
  92. "command": "copy-ai-ctx.copySelectedFiles",
  93. "when": "explorerViewletVisible && !listMultiSelection"
  94. },
  95. {
  96. "key": "ctrl+alt+c",
  97. "mac": "cmd+alt+c",
  98. "command": "copy-ai-ctx.copyMultiFiles",
  99. "when": "explorerViewletVisible && listMultiSelection"
  100. }
  101. ]
  102. },
  103. "scripts": {
  104. "vscode:prepublish": "node esbuild.js --minify",
  105. "build": "node esbuild.js",
  106. "watch": "node esbuild.js --watch",
  107. "lint": "eslint src --ext .ts",
  108. "package": "vsce package --out ./dist/",
  109. "publish": "vsce publish"
  110. },
  111. "devDependencies": {
  112. "@types/node": "^20.0.0",
  113. "@types/vscode": "^1.85.0",
  114. "@typescript-eslint/eslint-plugin": "^6.0.0",
  115. "@typescript-eslint/parser": "^6.0.0",
  116. "@vscode/vsce": "^2.19.0",
  117. "esbuild": "^0.20.0",
  118. "eslint": "^8.56.0",
  119. "typescript": "^5.3.0"
  120. },
  121. "repository": {
  122. "type": "git",
  123. "url": "https://git.ooo.ink/vsix/vsix-copy-ai-ctx.git"
  124. }
  125. }