bluelamp 2.0.10 → 3.0.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 (170) hide show
  1. package/README.md +12 -25
  2. package/bin/bluelamp +368 -0
  3. package/bin/bluelamp-base +368 -0
  4. package/bin/bluelamp10 +368 -0
  5. package/bin/bluelamp100 +368 -0
  6. package/bin/bluelamp11 +368 -0
  7. package/bin/bluelamp12 +368 -0
  8. package/bin/bluelamp13 +368 -0
  9. package/bin/bluelamp14 +368 -0
  10. package/bin/bluelamp15 +368 -0
  11. package/bin/bluelamp16 +368 -0
  12. package/bin/bluelamp17 +368 -0
  13. package/bin/bluelamp18 +368 -0
  14. package/bin/bluelamp19 +368 -0
  15. package/bin/bluelamp2 +368 -0
  16. package/bin/bluelamp20 +368 -0
  17. package/bin/bluelamp21 +368 -0
  18. package/bin/bluelamp22 +368 -0
  19. package/bin/bluelamp23 +368 -0
  20. package/bin/bluelamp24 +368 -0
  21. package/bin/bluelamp25 +368 -0
  22. package/bin/bluelamp26 +368 -0
  23. package/bin/bluelamp27 +368 -0
  24. package/bin/bluelamp28 +368 -0
  25. package/bin/bluelamp29 +368 -0
  26. package/bin/bluelamp3 +368 -0
  27. package/bin/bluelamp30 +368 -0
  28. package/bin/bluelamp31 +368 -0
  29. package/bin/bluelamp32 +368 -0
  30. package/bin/bluelamp33 +368 -0
  31. package/bin/bluelamp34 +368 -0
  32. package/bin/bluelamp35 +368 -0
  33. package/bin/bluelamp36 +368 -0
  34. package/bin/bluelamp37 +368 -0
  35. package/bin/bluelamp38 +368 -0
  36. package/bin/bluelamp39 +368 -0
  37. package/bin/bluelamp4 +368 -0
  38. package/bin/bluelamp40 +368 -0
  39. package/bin/bluelamp41 +368 -0
  40. package/bin/bluelamp42 +368 -0
  41. package/bin/bluelamp43 +368 -0
  42. package/bin/bluelamp44 +368 -0
  43. package/bin/bluelamp45 +368 -0
  44. package/bin/bluelamp46 +368 -0
  45. package/bin/bluelamp47 +368 -0
  46. package/bin/bluelamp48 +368 -0
  47. package/bin/bluelamp49 +368 -0
  48. package/bin/bluelamp5 +368 -0
  49. package/bin/bluelamp50 +368 -0
  50. package/bin/bluelamp51 +368 -0
  51. package/bin/bluelamp52 +368 -0
  52. package/bin/bluelamp53 +368 -0
  53. package/bin/bluelamp54 +368 -0
  54. package/bin/bluelamp55 +368 -0
  55. package/bin/bluelamp56 +368 -0
  56. package/bin/bluelamp57 +368 -0
  57. package/bin/bluelamp58 +368 -0
  58. package/bin/bluelamp59 +368 -0
  59. package/bin/bluelamp6 +368 -0
  60. package/bin/bluelamp60 +368 -0
  61. package/bin/bluelamp61 +368 -0
  62. package/bin/bluelamp62 +368 -0
  63. package/bin/bluelamp63 +368 -0
  64. package/bin/bluelamp64 +368 -0
  65. package/bin/bluelamp65 +368 -0
  66. package/bin/bluelamp66 +368 -0
  67. package/bin/bluelamp67 +368 -0
  68. package/bin/bluelamp68 +368 -0
  69. package/bin/bluelamp69 +368 -0
  70. package/bin/bluelamp7 +368 -0
  71. package/bin/bluelamp70 +368 -0
  72. package/bin/bluelamp71 +368 -0
  73. package/bin/bluelamp72 +368 -0
  74. package/bin/bluelamp73 +368 -0
  75. package/bin/bluelamp74 +368 -0
  76. package/bin/bluelamp75 +368 -0
  77. package/bin/bluelamp76 +368 -0
  78. package/bin/bluelamp77 +368 -0
  79. package/bin/bluelamp78 +368 -0
  80. package/bin/bluelamp79 +368 -0
  81. package/bin/bluelamp8 +368 -0
  82. package/bin/bluelamp80 +368 -0
  83. package/bin/bluelamp81 +368 -0
  84. package/bin/bluelamp82 +368 -0
  85. package/bin/bluelamp83 +368 -0
  86. package/bin/bluelamp84 +368 -0
  87. package/bin/bluelamp85 +368 -0
  88. package/bin/bluelamp86 +368 -0
  89. package/bin/bluelamp87 +368 -0
  90. package/bin/bluelamp88 +368 -0
  91. package/bin/bluelamp89 +368 -0
  92. package/bin/bluelamp9 +368 -0
  93. package/bin/bluelamp90 +368 -0
  94. package/bin/bluelamp91 +368 -0
  95. package/bin/bluelamp92 +368 -0
  96. package/bin/bluelamp93 +368 -0
  97. package/bin/bluelamp94 +368 -0
  98. package/bin/bluelamp95 +368 -0
  99. package/bin/bluelamp96 +368 -0
  100. package/bin/bluelamp97 +368 -0
  101. package/bin/bluelamp98 +368 -0
  102. package/bin/bluelamp99 +368 -0
  103. package/lib/mcp-server/dist/bluelamp-system.js +32 -0
  104. package/lib/mcp-server/dist/crypto-utils.js +27 -0
  105. package/lib/mcp-server/dist/database-version.js +33 -0
  106. package/lib/mcp-server/dist/index.js +62 -0
  107. package/lib/mcp-server/dist/plugins/base-plugin.js +24 -0
  108. package/lib/mcp-server/dist/plugins/plugin-manager.js +31 -0
  109. package/lib/mcp-server/dist/plugins/services/leonardo-plugin.js +95 -0
  110. package/lib/mcp-server/dist/plugins/services/leonardo-prompt-parser.js +36 -0
  111. package/lib/mcp-server/dist/plugins/services/portal-api-client.js +22 -0
  112. package/lib/mcp-server/dist/plugins/services/portal-plugin.js +52 -0
  113. package/lib/mcp-server/dist/secure-mcp-server.js +76 -0
  114. package/lib/mcp-server/dist/security/ApiKeyManager.js +24 -0
  115. package/lib/mcp-server/dist/security/InteractiveLogin.js +32 -0
  116. package/lib/mcp-server/dist/security/PortalAuthClient.js +1 -0
  117. package/lib/mcp-server/dist/security/SimpleAuthManager.js +1 -0
  118. package/lib/mcp-server/dist/security/TokenManager.js +25 -0
  119. package/lib/mcp-server/package.json +21 -0
  120. package/package.json +118 -34
  121. package/INSTALLATION_GUIDE.md +0 -109
  122. package/bin/blcf +0 -2
  123. package/bin/blcf2 +0 -28
  124. package/bin/blcf3 +0 -2
  125. package/bin/blcf4 +0 -2
  126. package/knowledge-injection/hooks/inject-encrypted.sh +0 -321
  127. package/lib/agents//343/203/225/343/202/231/343/203/253/343/203/274/343/203/251/343/203/263/343/203/225/343/202/232.md +0 -106
  128. package/lib/mcp-server/dist_optimized/bluelamp-system.d.ts +0 -29
  129. package/lib/mcp-server/dist_optimized/bluelamp-system.d.ts.map +0 -1
  130. package/lib/mcp-server/dist_optimized/bluelamp-system.js +0 -1
  131. package/lib/mcp-server/dist_optimized/bluelamp-system.js.bak +0 -340
  132. package/lib/mcp-server/dist_optimized/bluelamp-system.js.map +0 -1
  133. package/lib/mcp-server/dist_optimized/crypto-utils.d.ts +0 -33
  134. package/lib/mcp-server/dist_optimized/crypto-utils.d.ts.map +0 -1
  135. package/lib/mcp-server/dist_optimized/crypto-utils.js +0 -1
  136. package/lib/mcp-server/dist_optimized/crypto-utils.js.map +0 -1
  137. package/lib/mcp-server/dist_optimized/database-version.d.ts +0 -72
  138. package/lib/mcp-server/dist_optimized/database-version.d.ts.map +0 -1
  139. package/lib/mcp-server/dist_optimized/database-version.js +0 -2
  140. package/lib/mcp-server/dist_optimized/database-version.js.bak +0 -374
  141. package/lib/mcp-server/dist_optimized/database-version.js.map +0 -1
  142. package/lib/mcp-server/dist_optimized/index.d.ts +0 -3
  143. package/lib/mcp-server/dist_optimized/index.d.ts.map +0 -1
  144. package/lib/mcp-server/dist_optimized/index.js +0 -2
  145. package/lib/mcp-server/dist_optimized/index.js.map +0 -1
  146. package/lib/mcp-server/dist_optimized/secure-mcp-server.d.ts +0 -64
  147. package/lib/mcp-server/dist_optimized/secure-mcp-server.d.ts.map +0 -1
  148. package/lib/mcp-server/dist_optimized/secure-mcp-server.js +0 -1
  149. package/lib/mcp-server/dist_optimized/secure-mcp-server.js.bak +0 -1
  150. package/lib/mcp-server/dist_optimized/secure-mcp-server.js.bak2 +0 -1
  151. package/lib/mcp-server/dist_optimized/secure-mcp-server.js.map +0 -1
  152. package/lib/mcp-server/dist_optimized/security/InteractiveLogin.d.ts +0 -47
  153. package/lib/mcp-server/dist_optimized/security/InteractiveLogin.d.ts.map +0 -1
  154. package/lib/mcp-server/dist_optimized/security/InteractiveLogin.js +0 -1
  155. package/lib/mcp-server/dist_optimized/security/InteractiveLogin.js.map +0 -1
  156. package/lib/mcp-server/dist_optimized/security/PortalAuthClient.d.ts +0 -65
  157. package/lib/mcp-server/dist_optimized/security/PortalAuthClient.d.ts.map +0 -1
  158. package/lib/mcp-server/dist_optimized/security/PortalAuthClient.js +0 -1
  159. package/lib/mcp-server/dist_optimized/security/PortalAuthClient.js.map +0 -1
  160. package/lib/mcp-server/dist_optimized/security/SimpleAuthManager.backup +0 -294
  161. package/lib/mcp-server/dist_optimized/security/SimpleAuthManager.d.ts +0 -71
  162. package/lib/mcp-server/dist_optimized/security/SimpleAuthManager.d.ts.map +0 -1
  163. package/lib/mcp-server/dist_optimized/security/SimpleAuthManager.js +0 -1
  164. package/lib/mcp-server/dist_optimized/security/SimpleAuthManager.js.backup +0 -25
  165. package/lib/mcp-server/dist_optimized/security/SimpleAuthManager.js.map +0 -1
  166. package/lib/mcp-server/dist_optimized/security/TokenManager.d.ts +0 -61
  167. package/lib/mcp-server/dist_optimized/security/TokenManager.d.ts.map +0 -1
  168. package/lib/mcp-server/dist_optimized/security/TokenManager.js +0 -1
  169. package/lib/mcp-server/dist_optimized/security/TokenManager.js.map +0 -1
  170. package/scripts/setup-agents.js +0 -9
@@ -1,61 +0,0 @@
1
- /**
2
- * TokenManager - Portal統合CLIトークン管理クラス
3
- *
4
- * 機能:
5
- * - Portal発行CLIトークンの暗号化保存・読み込み
6
- * - Portal API /cli/verify でのトークン検証
7
- * - 有効期限チェック
8
- * - Portal統合認証システム対応
9
- */
10
- export declare class TokenManager {
11
- static TOKEN_FILE_PATH: string;
12
- static PORTAL_API_URL: string;
13
- static ENCRYPTION_KEY: string;
14
- static REQUEST_TIMEOUT: number;
15
- /**
16
- * Portal発行CLIトークンを暗号化して保存
17
- */
18
- static saveToken(token: string, userInfo?: any): Promise<boolean>;
19
- /**
20
- * 保存されたPortal CLIトークンを読み込み
21
- */
22
- static loadToken(): Promise<any>;
23
- /**
24
- * Portal API でトークン検証
25
- */
26
- static validateToken(token: string): Promise<{
27
- valid: boolean;
28
- userInfo: {
29
- id: any;
30
- name: any;
31
- email: any;
32
- role: any;
33
- };
34
- error?: undefined;
35
- } | {
36
- valid: boolean;
37
- error: any;
38
- userInfo?: undefined;
39
- }>;
40
- /**
41
- * 保存されたPortal CLIトークンを削除
42
- */
43
- static deleteToken(): Promise<boolean>;
44
- /**
45
- * トークン形式検証(Portal実装に合わせて調整)
46
- */
47
- static validateTokenFormat(token: string): boolean;
48
- /**
49
- * データ暗号化(Node.js 18+対応)
50
- */
51
- static encrypt(text: string): string;
52
- /**
53
- * データ復号化(Portal統合対応)
54
- */
55
- static decrypt(encryptedData: string): string;
56
- /**
57
- * HTTP/HTTPS リクエスト実行
58
- */
59
- static makeRequest(options: any): Promise<unknown>;
60
- }
61
- //# sourceMappingURL=TokenManager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TokenManager.d.ts","sourceRoot":"","sources":["../../src/security/TokenManager.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAUH,qBAAa,YAAY;IACrB,MAAM,CAAC,eAAe,SAA4D;IAClF,MAAM,CAAC,cAAc,SAAgD;IACrE,MAAM,CAAC,cAAc,SAAoC;IACzD,MAAM,CAAC,eAAe,SAAS;IAE/B;;OAEG;WACU,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,GAAE,GAAQ;IA4CxD;;OAEG;WACU,SAAS;IAiCtB;;OAEG;WACU,aAAa,CAAC,KAAK,EAAE,MAAM;;;;;;;;;;;;;;IAuCxC;;OAEG;WACU,WAAW;IAiBxB;;OAEG;IACH,MAAM,CAAC,mBAAmB,CAAC,KAAK,EAAE,MAAM;IAkCxC;;OAEG;IACH,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM;IAY3B;;OAEG;IACH,MAAM,CAAC,OAAO,CAAC,aAAa,EAAE,MAAM;IAiBpC;;OAEG;WACU,WAAW,CAAC,OAAO,EAAE,GAAG;CA+CxC"}
@@ -1 +0,0 @@
1
- "use strict";var e,t=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var a=Object.getOwnPropertyDescriptor(t,r);a&&!("get"in a?!t.__esModule:a.writable||a.configurable)||(a={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,a)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),r=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),n=this&&this.__importStar||(e=function(t){return e=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[t.length]=r);return t},e(t)},function(n){if(n&&n.__esModule)return n;var a={};if(null!=n)for(var i=e(n),s=0;s<i.length;s++)"default"!==i[s]&&t(a,n,i[s]);return r(a,n),a});Object.defineProperty(exports,"__esModule",{value:!0}),exports.TokenManager=void 0;const a=n(require("fs")),i=n(require("path")),s=n(require("os")),o=n(require("crypto")),c=n(require("https")),u=n(require("http")),l=require("url");class h{static async saveToken(e,t={}){try{if(!this.validateTokenFormat(e))throw new Error("Portal発行のCLI_形式トークンのみサポートされています");const r={token:e,savedAt:Date.now(),userInfo:t,version:"3.0",source:"portal"},n=this.encrypt(JSON.stringify(r)),s=i.dirname(this.TOKEN_FILE_PATH);return a.existsSync(s)||a.mkdirSync(s,{recursive:!0}),a.writeFileSync(this.TOKEN_FILE_PATH,n),!0}catch(e){return!1}}static async loadToken(){try{if(!a.existsSync(this.TOKEN_FILE_PATH))return null;const e=a.readFileSync(this.TOKEN_FILE_PATH,"utf8"),t=this.decrypt(e),r=JSON.parse(t);return r.token&&r.version?r:null}catch(e){return null}}static async validateToken(e){try{const t=await this.makeRequest({method:"POST",url:this.PORTAL_API_URL,headers:{"Content-Type":"application/json","X-CLI-Token":e},body:JSON.stringify({token:e})});return t.success&&t.data?{valid:!0,userInfo:{id:t.data.userId,name:t.data.userName,email:t.data.userEmail,role:t.data.userRole}}:{valid:!1,error:t.message}}catch(e){return{valid:!1,error:e.message}}}static async deleteToken(){try{return!a.existsSync(this.TOKEN_FILE_PATH)||(a.unlinkSync(this.TOKEN_FILE_PATH),!0)}catch(e){return!1}}static validateTokenFormat(e){if(!e||"string"!=typeof e)return!1;if(/^cli_[a-z0-9]{8}_[a-f0-9]{64}$/.test(e))return!0;if(e.startsWith("cli_"))return!1;if(e.startsWith("CLI_")){if(/^CLI_[a-f0-9]{64}$/.test(e))return!0}return!1}static encrypt(e){const t=o.scryptSync(this.ENCRYPTION_KEY,"salt",32),r=o.randomBytes(16),n=o.createCipheriv("aes-256-cbc",t,r);let a=n.update(e,"utf8","hex");return a+=n.final("hex"),r.toString("hex")+":"+a}static decrypt(e){const t=o.scryptSync(this.ENCRYPTION_KEY,"salt",32),r=e.split(":"),n=Buffer.from(r[0],"hex"),a=r[1],i=o.createDecipheriv("aes-256-cbc",t,n);let s=i.update(a,"hex","utf8");return s+=i.final("utf8"),s}static async makeRequest(e){return new Promise((t,r)=>{const n=new l.URL(e.url),a={hostname:n.hostname,port:n.port||("https:"===n.protocol?443:80),path:n.pathname+n.search,method:e.method||"GET",headers:e.headers||{},timeout:this.REQUEST_TIMEOUT},i=("https:"===n.protocol?c:u).request(a,e=>{let n="";e.on("data",e=>{n+=e}),e.on("end",()=>{try{const e=JSON.parse(n);t(e)}catch(e){r(new Error(`Invalid JSON response: ${n}`))}})});i.on("error",e=>{r(e)}),i.on("timeout",()=>{i.destroy(),r(new Error("Request timeout"))}),e.body&&i.write(e.body),i.end()})}}exports.TokenManager=h,h.TOKEN_FILE_PATH=i.join(s.homedir(),".bluelamp","portal-token.enc"),h.PORTAL_API_URL="https://geniemon.vercel.app/api/cli/verify",h.ENCRYPTION_KEY="bluelamp-portal-token-key-2024",h.REQUEST_TIMEOUT=1e4;
@@ -1 +0,0 @@
1
- {"version":3,"file":"TokenManager.js","sourceRoot":"","sources":["../../src/security/TokenManager.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- #!/usr/bin/env node
2
- const fs=require("fs"),path=require("path"),os=require("os")
3
- console.log("🔵 BlueLamp エージェントセットアップ開始...")
4
- const packageRoot=path.dirname(__dirname),agentsSourceDir=path.join(packageRoot,"lib/agents"),claudeDir=path.join(os.homedir(),".claude"),commandsDir=path.join(claudeDir,"commands"),agentsDir=path.join(claudeDir,"agents")
5
- try{fs.existsSync(claudeDir)||(fs.mkdirSync(claudeDir,{recursive:!0}),console.log("📁 .claudeディレクトリを作成しました")),fs.existsSync(commandsDir)||(fs.mkdirSync(commandsDir,{recursive:!0}),console.log("📁 .claude/commandsディレクトリを作成しました")),fs.existsSync(agentsDir)||(fs.mkdirSync(agentsDir,{recursive:!0}),console.log("📁 .claude/agentsディレクトリを作成しました"))
6
- const o=fs.readdirSync(agentsSourceDir)
7
- let e=0
8
- for(const s of o)if(s.endsWith(".md")){const o=path.join(agentsSourceDir,s),c=path.join(commandsDir,s),n=path.join(agentsDir,s)
9
- fs.copyFileSync(o,c),fs.copyFileSync(o,n),e++,console.log(`✅ ${s} を両ディレクトリにコピーしました`)}console.log(""),console.log("🎉 BlueLampエージェントセットアップ完了!"),console.log(` ${e}個のエージェントが利用可能になりました`),console.log(" 📁 ~/.claude/commands/ と ~/.claude/agents/ に配置済み"),console.log(""),console.log("🚀 使用方法:"),console.log(' 1. ターミナルで "blcf" コマンドを実行'),console.log(" 2. Claude Codeが起動し、16種類のエージェントが利用可能"),console.log(" 3. @エージェント名 でサブエージェントを呼び出し"),console.log(""),console.log("📋 主要エージェント:"),console.log(" - @ブルーランプ (プロジェクト全体調査)"),console.log(" - @要件定義 (要件定義クリエイター)"),console.log(" - @実装計画 (インプリメンターX)"),console.log(" - @UIUX (モックアップ作成)"),console.log(" - その他12種類のエージェント")}catch(o){console.error("❌ セットアップエラー:",o.message),console.error(""),console.error("手動セットアップ方法:"),console.error(`1. ${agentsSourceDir} の内容を`),console.error(`2. ${commandsDir} にコピーしてください`),process.exit(1)}