bluelamp 6.6.13 → 6.6.16
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.
- package/README.md +0 -20
- package/dist/auth/InteractiveLogin.js +1 -3
- package/dist/auth/PortalAuthClient.d.ts +18 -0
- package/dist/auth/PortalAuthClient.d.ts.map +1 -1
- package/dist/auth/PortalAuthClient.js +1 -3
- package/dist/auth/PortalAuthClient.js.map +1 -1
- package/dist/auth/TokenManager.js +1 -3
- package/dist/auth/portalTokenStore.d.ts +1 -1
- package/dist/auth/portalTokenStore.d.ts.map +1 -1
- package/dist/auth/portalTokenStore.js +1 -1
- package/dist/auth/portalTokenStore.js.map +1 -1
- package/dist/bin/bluelamp-vscode-base.mjs +1 -3
- package/dist/i18n/en.d.ts +2 -0
- package/dist/i18n/en.d.ts.map +1 -1
- package/dist/i18n/en.js +1 -1
- package/dist/i18n/en.js.map +1 -1
- package/dist/i18n/ja.d.ts +2 -0
- package/dist/i18n/ja.d.ts.map +1 -1
- package/dist/i18n/ja.js +1 -1
- package/dist/i18n/ja.js.map +1 -1
- package/dist/lib/claudeOnboardingSeed.d.ts +28 -1
- package/dist/lib/claudeOnboardingSeed.d.ts.map +1 -1
- package/dist/lib/claudeOnboardingSeed.js +1 -1
- package/dist/lib/claudeOnboardingSeed.js.map +1 -1
- package/dist/lib/initialPrompt.d.ts +28 -0
- package/dist/lib/initialPrompt.d.ts.map +1 -0
- package/dist/lib/initialPrompt.js +1 -0
- package/dist/lib/initialPrompt.js.map +1 -0
- package/package.json +3 -4
- package/dist/bin/bluelamp-secret.mjs +0 -2
- package/dist/lib/secretExec.d.ts +0 -86
- package/dist/lib/secretExec.d.ts.map +0 -1
- package/dist/lib/secretExec.js +0 -1
- package/dist/lib/secretExec.js.map +0 -1
package/dist/i18n/en.d.ts
CHANGED
|
@@ -70,6 +70,8 @@ export declare const en: {
|
|
|
70
70
|
readonly authAttempt: "Auth attempt {attempt}/{max}...";
|
|
71
71
|
readonly authOk: "Portal auth successful";
|
|
72
72
|
readonly tokenOk: "Token acquired";
|
|
73
|
+
readonly tokenPinned: "Pinned this machine's token to tenant {tenant} (~/.musuhi/pinned-tenant.json)";
|
|
74
|
+
readonly pinDeclarationInvalid: "Login aborted: the machine declaration file could not be read: {error}";
|
|
73
75
|
readonly authRetry: "Retrying in {delay}ms...";
|
|
74
76
|
readonly portalAuthError: "Portal auth error: {error}";
|
|
75
77
|
readonly portalAuthHelp1: "1. Check your internet connection";
|
package/dist/i18n/en.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"en.d.ts","sourceRoot":"","sources":["../../src/i18n/en.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,EAAE
|
|
1
|
+
{"version":3,"file":"en.d.ts","sourceRoot":"","sources":["../../src/i18n/en.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiHL,CAAC"}
|
package/dist/i18n/en.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.en=void 0,exports.en={base:{loadedEnvLocal:"Loaded .env.local",loadedEnv:"Loaded .env",undefinedCommand:"Undefined command: {commandName}",customSlotConfig:'Custom slot config: slot{slotNumber} → "{keyword}"',brandTitle:"B l u e L a m p",commandInfo:"Command: {commandName}{slotInfo}",debugMode:"Debug mode: enabled",logFile:"Log file: {path}",promptInfo:"Prompt: {keyword}",initialPromptTitle:"Let's get started",initialPromptInputHint:'Type your request in the "❯" box below and press Enter (if typing does nothing, click this panel once).',initialPromptLoadContext:'BlueLamp MCP reference materials "{keyword}" are available for this session.\nPlease use the load_knowledge tool to load "{keyword}" before starting.',initialPromptKeywordNote:"If MCP tools are not yet loaded, please wait a moment and try again.",initialPromptReady:"",launchingClaude:"Launching Claude...",startInstruction:"Your main prompt has already been loaded. Follow its definition and begin naturally by greeting the user.",mcpServer:"MCP Server: BlueLamp",knowledge:"Knowledge: {keyword}",debugInfo:"Debug info:",debugCommand:"Command: {command}",debugArgs:"Args: {args}",debugConfigFile:"MCP config file: {path}",debugEnvKeyword:"Env BLUELAMP_KEYWORD: {keyword}",debugEnvToken:"CLI token (portal-token.enc): {token}...",debugEnvPortal:"Env PORTAL_URL: {url}",debugConfigContent:"MCP config file contents:",claudeStartError:"Claude launch error: {error}",sessionEnd:"BlueLamp session ended",shuttingDown:"Shutting down BlueLamp...",unexpectedError:"Unexpected error: {error}",authActivated:"Connected to BlueLamp",extendedMode:"Connected to BlueLamp",claudeAccountLabel:"Claude: {email}",claudeAccountNotLoggedIn:"Claude: not logged in (the login screen appears on first launch)"},auth:{portalAuthTitle:"BlueLamp - Portal Auth",checkingSavedToken:"Checking saved token...",validationResult:"Validation result:",existingTokenValid:"Existing token is valid",savedTokenInvalid:"Saved token is invalid",savedTokenUnverifiable:"Could not verify the saved token ({error}). Keeping it and continuing with the saved token",enterCredentials:"Enter your Portal login credentials",invalidEmail:"Invalid email address format",emptyPassword:"Password was not entered",kiLimitExceeded:"Knowledge injection usage limit reached",kiLimitCheckPortal:"Check your usage on the Portal",authError:"Auth error: {error}",savingToken:"Saving token...",tokenSaveFailed:"Token save failed (auth succeeded)",tokenSaved:"Token saved securely",unexpectedError:"Unexpected error: {error}",authSuccess:"Portal auth successful",userLabel:"User: {name}",emailLabel:"Email: {email}",roleLabel:"Role: {role}",usingCachedToken:"Using cached token",firstLoginComplete:"First login complete",logoutTitle:"BlueLamp - Logout",confirmLogout:"Delete login credentials? (y/N): ",logoutSuccess:"Login credentials deleted",logoutNotFound:"No login credentials found",logoutCancelled:"Cancelled",envUpdateFailed:"Failed to update .env file: {error}",authAttempt:"Auth attempt {attempt}/{max}...",authOk:"Portal auth successful",tokenOk:"Token acquired",authRetry:"Retrying in {delay}ms...",portalAuthError:"Portal auth error: {error}",portalAuthHelp1:"1. Check your internet connection",portalAuthHelp2:"2. Verify your Portal credentials",portalAuthHelp3:"3. Check if {url} is accessible",portalAuthHelpTitle:"Troubleshooting:",tokenSaveComplete:"Token saved",tokenSaveError:"Token save error: {error}",tokenLoadError:"Token load error: {error}",tokenDeleteError:"Token delete error: {error}",invalidTokenFormat:"Only Portal-issued cli_ format tokens are supported",networkError:"Network error: {error}",requestTimeout:"Request timed out",responseParseError:"Response parse error: {error}"},mcp:{toolDescriptionLoadKnowledge:"Retrieve project reference materials from BlueLamp",keywordDescription:"Keyword (e.g. @相談 — use as-is, no prefix needed)",knowledgeLoadSuccess:"BlueLamp Specialized Context Loaded",knowledgeApplied:"Reference information loaded. Please refer to the above content for assistance.",knowledgeNotFound:'No knowledge found for keyword "{keyword}"',knowledgeLoadError:"Error loading knowledge: {error}",promptNotFoundForKeyword:'No prompt found for keyword "{keyword}"',apiReturnedError:"API returned an error",portalApiError:"Portal API error (HTTP {status})",portalApiFailed:"Failed to retrieve knowledge from Portal API: {error}",portalCommunicationError:"Portal API communication error: {error}",noAuthToken:"No auth token set. Run any of bluelamp1-300 in a terminal to open the login screen (this creates ~/.musuhi/portal-token.enc).",listMcpsFailed:"Failed to list MCPs: {error}",getMcpInfoFailed:"Failed to get MCP info: {error}",callToolFailed:"Tool execution failed: {error}",violationNoToken:"No auth token set",violationApiError:"Violation report error (HTTP {status})",violationCommunicationError:"Violation report communication error: {error}"}};
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.en=void 0,exports.en={base:{loadedEnvLocal:"Loaded .env.local",loadedEnv:"Loaded .env",undefinedCommand:"Undefined command: {commandName}",customSlotConfig:'Custom slot config: slot{slotNumber} → "{keyword}"',brandTitle:"B l u e L a m p",commandInfo:"Command: {commandName}{slotInfo}",debugMode:"Debug mode: enabled",logFile:"Log file: {path}",promptInfo:"Prompt: {keyword}",initialPromptTitle:"Let's get started",initialPromptInputHint:'Type your request in the "❯" box below and press Enter (if typing does nothing, click this panel once).',initialPromptLoadContext:'BlueLamp MCP reference materials "{keyword}" are available for this session.\nPlease use the load_knowledge tool to load "{keyword}" before starting.',initialPromptKeywordNote:"If MCP tools are not yet loaded, please wait a moment and try again.",initialPromptReady:"",launchingClaude:"Launching Claude...",startInstruction:"Your main prompt has already been loaded. Follow its definition and begin naturally by greeting the user.",mcpServer:"MCP Server: BlueLamp",knowledge:"Knowledge: {keyword}",debugInfo:"Debug info:",debugCommand:"Command: {command}",debugArgs:"Args: {args}",debugConfigFile:"MCP config file: {path}",debugEnvKeyword:"Env BLUELAMP_KEYWORD: {keyword}",debugEnvToken:"CLI token (portal-token.enc): {token}...",debugEnvPortal:"Env PORTAL_URL: {url}",debugConfigContent:"MCP config file contents:",claudeStartError:"Claude launch error: {error}",sessionEnd:"BlueLamp session ended",shuttingDown:"Shutting down BlueLamp...",unexpectedError:"Unexpected error: {error}",authActivated:"Connected to BlueLamp",extendedMode:"Connected to BlueLamp",claudeAccountLabel:"Claude: {email}",claudeAccountNotLoggedIn:"Claude: not logged in (the login screen appears on first launch)"},auth:{portalAuthTitle:"BlueLamp - Portal Auth",checkingSavedToken:"Checking saved token...",validationResult:"Validation result:",existingTokenValid:"Existing token is valid",savedTokenInvalid:"Saved token is invalid",savedTokenUnverifiable:"Could not verify the saved token ({error}). Keeping it and continuing with the saved token",enterCredentials:"Enter your Portal login credentials",invalidEmail:"Invalid email address format",emptyPassword:"Password was not entered",kiLimitExceeded:"Knowledge injection usage limit reached",kiLimitCheckPortal:"Check your usage on the Portal",authError:"Auth error: {error}",savingToken:"Saving token...",tokenSaveFailed:"Token save failed (auth succeeded)",tokenSaved:"Token saved securely",unexpectedError:"Unexpected error: {error}",authSuccess:"Portal auth successful",userLabel:"User: {name}",emailLabel:"Email: {email}",roleLabel:"Role: {role}",usingCachedToken:"Using cached token",firstLoginComplete:"First login complete",logoutTitle:"BlueLamp - Logout",confirmLogout:"Delete login credentials? (y/N): ",logoutSuccess:"Login credentials deleted",logoutNotFound:"No login credentials found",logoutCancelled:"Cancelled",envUpdateFailed:"Failed to update .env file: {error}",authAttempt:"Auth attempt {attempt}/{max}...",authOk:"Portal auth successful",tokenOk:"Token acquired",tokenPinned:"Pinned this machine's token to tenant {tenant} (~/.musuhi/pinned-tenant.json)",pinDeclarationInvalid:"Login aborted: the machine declaration file could not be read: {error}",authRetry:"Retrying in {delay}ms...",portalAuthError:"Portal auth error: {error}",portalAuthHelp1:"1. Check your internet connection",portalAuthHelp2:"2. Verify your Portal credentials",portalAuthHelp3:"3. Check if {url} is accessible",portalAuthHelpTitle:"Troubleshooting:",tokenSaveComplete:"Token saved",tokenSaveError:"Token save error: {error}",tokenLoadError:"Token load error: {error}",tokenDeleteError:"Token delete error: {error}",invalidTokenFormat:"Only Portal-issued cli_ format tokens are supported",networkError:"Network error: {error}",requestTimeout:"Request timed out",responseParseError:"Response parse error: {error}"},mcp:{toolDescriptionLoadKnowledge:"Retrieve project reference materials from BlueLamp",keywordDescription:"Keyword (e.g. @相談 — use as-is, no prefix needed)",knowledgeLoadSuccess:"BlueLamp Specialized Context Loaded",knowledgeApplied:"Reference information loaded. Please refer to the above content for assistance.",knowledgeNotFound:'No knowledge found for keyword "{keyword}"',knowledgeLoadError:"Error loading knowledge: {error}",promptNotFoundForKeyword:'No prompt found for keyword "{keyword}"',apiReturnedError:"API returned an error",portalApiError:"Portal API error (HTTP {status})",portalApiFailed:"Failed to retrieve knowledge from Portal API: {error}",portalCommunicationError:"Portal API communication error: {error}",noAuthToken:"No auth token set. Run any of bluelamp1-300 in a terminal to open the login screen (this creates ~/.musuhi/portal-token.enc).",listMcpsFailed:"Failed to list MCPs: {error}",getMcpInfoFailed:"Failed to get MCP info: {error}",callToolFailed:"Tool execution failed: {error}",violationNoToken:"No auth token set",violationApiError:"Violation report error (HTTP {status})",violationCommunicationError:"Violation report communication error: {error}"}};
|
package/dist/i18n/en.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"en.js","sourceRoot":"","sources":["../../src/i18n/en.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACU,QAAA,EAAE,GAAG;IAChB,IAAI,EAAE;QACJ,cAAc,EAAE,mBAAmB;QACnC,SAAS,EAAE,aAAa;QACxB,gBAAgB,EAAE,kCAAkC;QACpD,gBAAgB,EAAE,oDAAoD;QACtE,UAAU,EAAE,iBAAiB;QAC7B,WAAW,EAAE,kCAAkC;QAC/C,SAAS,EAAE,qBAAqB;QAChC,OAAO,EAAE,kBAAkB;QAC3B,UAAU,EAAE,mBAAmB;QAC/B,kBAAkB,EAAE,mBAAmB;QACvC,sBAAsB,EACpB,yGAAyG;QAC3G,wBAAwB,EACtB,uJAAuJ;QACzJ,wBAAwB,EACtB,sEAAsE;QACxE,kBAAkB,EAAE,EAAE;QACtB,eAAe,EAAE,qBAAqB;QACtC,gBAAgB,EACd,2GAA2G;QAC7G,SAAS,EAAE,sBAAsB;QACjC,SAAS,EAAE,sBAAsB;QACjC,SAAS,EAAE,aAAa;QACxB,YAAY,EAAE,oBAAoB;QAClC,SAAS,EAAE,cAAc;QACzB,eAAe,EAAE,yBAAyB;QAC1C,eAAe,EAAE,iCAAiC;QAClD,aAAa,EAAE,0CAA0C;QACzD,cAAc,EAAE,uBAAuB;QACvC,kBAAkB,EAAE,2BAA2B;QAC/C,gBAAgB,EAAE,8BAA8B;QAChD,UAAU,EAAE,wBAAwB;QACpC,YAAY,EAAE,2BAA2B;QACzC,eAAe,EAAE,2BAA2B;QAC5C,aAAa,EAAE,uBAAuB;QACtC,YAAY,EAAE,uBAAuB;QACrC,qFAAqF;QACrF,qFAAqF;QACrF,kBAAkB,EAAE,iBAAiB;QACrC,wBAAwB,EAAE,kEAAkE;KAC7F;IACD,IAAI,EAAE;QACJ,eAAe,EAAE,wBAAwB;QACzC,kBAAkB,EAAE,yBAAyB;QAC7C,gBAAgB,EAAE,oBAAoB;QACtC,kBAAkB,EAAE,yBAAyB;QAC7C,iBAAiB,EAAE,wBAAwB;QAC3C,sBAAsB,EAAE,4FAA4F;QACpH,gBAAgB,EAAE,qCAAqC;QACvD,YAAY,EAAE,8BAA8B;QAC5C,aAAa,EAAE,0BAA0B;QACzC,eAAe,EAAE,yCAAyC;QAC1D,kBAAkB,EAAE,gCAAgC;QACpD,SAAS,EAAE,qBAAqB;QAChC,WAAW,EAAE,iBAAiB;QAC9B,eAAe,EAAE,oCAAoC;QACrD,UAAU,EAAE,sBAAsB;QAClC,eAAe,EAAE,2BAA2B;QAC5C,WAAW,EAAE,wBAAwB;QACrC,SAAS,EAAE,cAAc;QACzB,UAAU,EAAE,gBAAgB;QAC5B,SAAS,EAAE,cAAc;QACzB,gBAAgB,EAAE,oBAAoB;QACtC,kBAAkB,EAAE,sBAAsB;QAC1C,WAAW,EAAE,mBAAmB;QAChC,aAAa,EAAE,mCAAmC;QAClD,aAAa,EAAE,2BAA2B;QAC1C,cAAc,EAAE,4BAA4B;QAC5C,eAAe,EAAE,WAAW;QAC5B,eAAe,EAAE,qCAAqC;QACtD,WAAW,EAAE,iCAAiC;QAC9C,MAAM,EAAE,wBAAwB;QAChC,OAAO,EAAE,gBAAgB;QACzB,SAAS,EAAE,0BAA0B;QACrC,eAAe,EAAE,4BAA4B;QAC7C,eAAe,EAAE,mCAAmC;QACpD,eAAe,EAAE,mCAAmC;QACpD,eAAe,EAAE,iCAAiC;QAClD,mBAAmB,EAAE,kBAAkB;QACvC,iBAAiB,EAAE,aAAa;QAChC,cAAc,EAAE,2BAA2B;QAC3C,cAAc,EAAE,2BAA2B;QAC3C,gBAAgB,EAAE,6BAA6B;QAC/C,kBAAkB,EAAE,qDAAqD;QACzE,YAAY,EAAE,wBAAwB;QACtC,cAAc,EAAE,mBAAmB;QACnC,kBAAkB,EAAE,+BAA+B;KACpD;IACD,GAAG,EAAE;QACH,4BAA4B,EAAE,oDAAoD;QAClF,kBAAkB,EAAE,kDAAkD;QACtE,oBAAoB,EAAE,qCAAqC;QAC3D,gBAAgB,EAAE,iFAAiF;QACnG,iBAAiB,EAAE,4CAA4C;QAC/D,kBAAkB,EAAE,kCAAkC;QACtD,wBAAwB,EAAE,yCAAyC;QACnE,gBAAgB,EAAE,uBAAuB;QACzC,cAAc,EAAE,kCAAkC;QAClD,eAAe,EAAE,uDAAuD;QACxE,wBAAwB,EAAE,yCAAyC;QACnE,WAAW,EACT,+HAA+H;QACjI,cAAc,EAAE,8BAA8B;QAC9C,gBAAgB,EAAE,iCAAiC;QACnD,cAAc,EAAE,gCAAgC;QAChD,gBAAgB,EAAE,mBAAmB;QACrC,iBAAiB,EAAE,wCAAwC;QAC3D,2BAA2B,EAAE,+CAA+C;KAC7E;CACO,CAAC"}
|
|
1
|
+
{"version":3,"file":"en.js","sourceRoot":"","sources":["../../src/i18n/en.ts"],"names":[],"mappings":"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"}
|
package/dist/i18n/ja.d.ts
CHANGED
|
@@ -71,6 +71,8 @@ export declare const ja: {
|
|
|
71
71
|
readonly authAttempt: "認証試行 {attempt}/{max}...";
|
|
72
72
|
readonly authOk: "Portal認証成功";
|
|
73
73
|
readonly tokenOk: "トークン取得成功";
|
|
74
|
+
readonly tokenPinned: "この機体のトークンをテナント {tenant} に固定しました(~/.musuhi/pinned-tenant.json)";
|
|
75
|
+
readonly pinDeclarationInvalid: "機体の宣言ファイルが読めないためログインを中止しました: {error}";
|
|
74
76
|
readonly authRetry: "{delay}ms後にリトライ...";
|
|
75
77
|
readonly portalAuthError: "Portal認証エラー: {error}";
|
|
76
78
|
readonly portalAuthHelp1: "1. インターネット接続を確認してください";
|
package/dist/i18n/ja.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ja.d.ts","sourceRoot":"","sources":["../../src/i18n/ja.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,EAAE
|
|
1
|
+
{"version":3,"file":"ja.d.ts","sourceRoot":"","sources":["../../src/i18n/ja.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiHL,CAAC"}
|
package/dist/i18n/ja.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ja=void 0,exports.ja={base:{loadedEnvLocal:"Loaded .env.local",loadedEnv:"Loaded .env",undefinedCommand:"未定義のコマンド: {commandName}",customSlotConfig:'カスタムスロット設定: slot{slotNumber} → "{keyword}"',brandTitle:"B l u e L a m p",commandInfo:"コマンド: {commandName}{slotInfo}",debugMode:"デバッグモード: 有効",logFile:"ログファイル: {path}",promptInfo:"プロンプト: {keyword}",initialPromptTitle:"さあ始めましょう",initialPromptInputHint:"ご用件は、この下の「❯」の欄に日本語で入力して Enter を押してください(文字が打てない時は、この画面を一度クリックしてください)。",initialPromptLoadContext:'このセッションではBlueLamp MCPの参考資料 "{keyword}" が利用可能です。\nload_knowledge ツールで "{keyword}" を読み込んでから始めてください。',initialPromptKeywordNote:"MCPツールがまだ読み込まれていない場合は、少し待ってから再度お試しください。",initialPromptReady:"",launchingClaude:"Claude 起動中...",startInstruction:"あなたの本体プロンプトは読み込み済みです。本体の定義に従い、ユーザーへの挨拶から自然に開始してください。",mcpServer:"MCP Server: BlueLamp",knowledge:"Knowledge: {keyword}",debugInfo:"デバッグ情報:",debugCommand:"コマンド: {command}",debugArgs:"引数: {args}",debugConfigFile:"MCP設定ファイル: {path}",debugEnvKeyword:"環境変数 MUSUHI_KEYWORD: {keyword}",debugEnvToken:"CLI トークン (portal-token.enc): {token}...",debugEnvPortal:"環境変数 PORTAL_URL: {url}",debugConfigContent:"MCP設定ファイル内容:",claudeStartError:"Claude 起動エラー: {error}",sessionEnd:"BlueLamp セッション終了",shuttingDown:"BlueLamp を終了しています...",unexpectedError:"予期しないエラー: {error}",authActivated:"BlueLamp に接続しました",extendedMode:"BlueLamp に接続しました",claudeAccountLabel:"Claude: {email}",claudeAccountNotLoggedIn:"Claude: 未ログイン(初回起動時にログイン画面が出ます)"},auth:{portalAuthTitle:"BlueLamp ─ 認証",checkingSavedToken:"保存されたトークンを確認中...",validationResult:"検証結果:",existingTokenValid:"既存のトークンが有効です",savedTokenInvalid:"保存されたトークンが無効です",savedTokenUnverifiable:"保存されたトークンを確かめられませんでした({error})。消さずに、保存済みのトークンで続けます",enterCredentials:"Portalログイン情報を入力してください",invalidEmail:"無効なメールアドレス形式です",emptyPassword:"パスワードが入力されていません",kiLimitExceeded:"ナレッジインジェクション使用回数が上限に達しています",kiLimitCheckPortal:"Portalで使用状況を確認してください",authError:"認証エラー: {error}",savingToken:"トークンを保存中...",tokenSaveFailed:"トークン保存に失敗しました(認証は成功)",tokenSaved:"トークンを安全に保存しました",unexpectedError:"予期しないエラー: {error}",authSuccess:"Portal認証成功",userLabel:"ユーザー: {name}",emailLabel:"Email: {email}",roleLabel:"ロール: {role}",usingCachedToken:"保存済みトークンを使用",firstLoginComplete:"初回ログイン完了",logoutTitle:"BlueLamp - ログアウト",confirmLogout:"ログイン情報を削除しますか? (y/N): ",logoutSuccess:"ログイン情報を削除しました",logoutNotFound:"ログイン情報が見つかりません",logoutCancelled:"キャンセルしました",envUpdateFailed:"envファイルの更新に失敗: {error}",authAttempt:"認証試行 {attempt}/{max}...",authOk:"Portal認証成功",tokenOk:"トークン取得成功",authRetry:"{delay}ms後にリトライ...",portalAuthError:"Portal認証エラー: {error}",portalAuthHelp1:"1. インターネット接続を確認してください",portalAuthHelp2:"2. Portal認証情報が正しいか確認してください",portalAuthHelp3:"3. {url} にアクセスできるか確認してください",portalAuthHelpTitle:"解決方法:",tokenSaveComplete:"トークン保存完了",tokenSaveError:"トークン保存エラー: {error}",tokenLoadError:"トークン読み込みエラー: {error}",tokenDeleteError:"トークン削除エラー: {error}",invalidTokenFormat:"CLI形式トークンのみサポートされています(CLI_xxx形式)",networkError:"ネットワークエラー: {error}",requestTimeout:"リクエストタイムアウト",responseParseError:"レスポンス解析エラー: {error}"},mcp:{toolDescriptionLoadKnowledge:"プロジェクトの参考資料を取得します",keywordDescription:"キーワード(@相談 など、そのまま指定してください。プレフィックスの追加は不要です)",knowledgeLoadSuccess:"BlueLamp 専門コンテキスト読み込み完了",knowledgeApplied:"参考情報の読み込みが完了しました。上記の内容を参考にしてご支援ください。",knowledgeNotFound:'キーワード "{keyword}" に対応する知識が見つかりませんでした',knowledgeLoadError:"知識の読み込み中にエラーが発生しました: {error}",promptNotFoundForKeyword:'キーワード "{keyword}" に対応するプロンプトが見つかりませんでした',apiReturnedError:"APIがエラーを返しました",portalApiError:"Portal APIエラー (HTTP {status})",portalApiFailed:"Portal APIから知識を取得できませんでした: {error}",portalCommunicationError:"Portal API通信エラー: {error}",noAuthToken:"認証トークンが設定されていません。ターミナルで bluelamp1〜300 のいずれかを実行するとログイン画面が出ます(~/.musuhi/portal-token.enc が作成されます)。",listMcpsFailed:"MCP一覧の取得に失敗しました: {error}",getMcpInfoFailed:"MCP情報の取得に失敗しました: {error}",callToolFailed:"ツール実行に失敗しました: {error}",violationNoToken:"認証トークンが設定されていません",violationApiError:"違反報告エラー (HTTP {status})",violationCommunicationError:"違反報告通信エラー: {error}"}};
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ja=void 0,exports.ja={base:{loadedEnvLocal:"Loaded .env.local",loadedEnv:"Loaded .env",undefinedCommand:"未定義のコマンド: {commandName}",customSlotConfig:'カスタムスロット設定: slot{slotNumber} → "{keyword}"',brandTitle:"B l u e L a m p",commandInfo:"コマンド: {commandName}{slotInfo}",debugMode:"デバッグモード: 有効",logFile:"ログファイル: {path}",promptInfo:"プロンプト: {keyword}",initialPromptTitle:"さあ始めましょう",initialPromptInputHint:"ご用件は、この下の「❯」の欄に日本語で入力して Enter を押してください(文字が打てない時は、この画面を一度クリックしてください)。",initialPromptLoadContext:'このセッションではBlueLamp MCPの参考資料 "{keyword}" が利用可能です。\nload_knowledge ツールで "{keyword}" を読み込んでから始めてください。',initialPromptKeywordNote:"MCPツールがまだ読み込まれていない場合は、少し待ってから再度お試しください。",initialPromptReady:"",launchingClaude:"Claude 起動中...",startInstruction:"あなたの本体プロンプトは読み込み済みです。本体の定義に従い、ユーザーへの挨拶から自然に開始してください。",mcpServer:"MCP Server: BlueLamp",knowledge:"Knowledge: {keyword}",debugInfo:"デバッグ情報:",debugCommand:"コマンド: {command}",debugArgs:"引数: {args}",debugConfigFile:"MCP設定ファイル: {path}",debugEnvKeyword:"環境変数 MUSUHI_KEYWORD: {keyword}",debugEnvToken:"CLI トークン (portal-token.enc): {token}...",debugEnvPortal:"環境変数 PORTAL_URL: {url}",debugConfigContent:"MCP設定ファイル内容:",claudeStartError:"Claude 起動エラー: {error}",sessionEnd:"BlueLamp セッション終了",shuttingDown:"BlueLamp を終了しています...",unexpectedError:"予期しないエラー: {error}",authActivated:"BlueLamp に接続しました",extendedMode:"BlueLamp に接続しました",claudeAccountLabel:"Claude: {email}",claudeAccountNotLoggedIn:"Claude: 未ログイン(初回起動時にログイン画面が出ます)"},auth:{portalAuthTitle:"BlueLamp ─ 認証",checkingSavedToken:"保存されたトークンを確認中...",validationResult:"検証結果:",existingTokenValid:"既存のトークンが有効です",savedTokenInvalid:"保存されたトークンが無効です",savedTokenUnverifiable:"保存されたトークンを確かめられませんでした({error})。消さずに、保存済みのトークンで続けます",enterCredentials:"Portalログイン情報を入力してください",invalidEmail:"無効なメールアドレス形式です",emptyPassword:"パスワードが入力されていません",kiLimitExceeded:"ナレッジインジェクション使用回数が上限に達しています",kiLimitCheckPortal:"Portalで使用状況を確認してください",authError:"認証エラー: {error}",savingToken:"トークンを保存中...",tokenSaveFailed:"トークン保存に失敗しました(認証は成功)",tokenSaved:"トークンを安全に保存しました",unexpectedError:"予期しないエラー: {error}",authSuccess:"Portal認証成功",userLabel:"ユーザー: {name}",emailLabel:"Email: {email}",roleLabel:"ロール: {role}",usingCachedToken:"保存済みトークンを使用",firstLoginComplete:"初回ログイン完了",logoutTitle:"BlueLamp - ログアウト",confirmLogout:"ログイン情報を削除しますか? (y/N): ",logoutSuccess:"ログイン情報を削除しました",logoutNotFound:"ログイン情報が見つかりません",logoutCancelled:"キャンセルしました",envUpdateFailed:"envファイルの更新に失敗: {error}",authAttempt:"認証試行 {attempt}/{max}...",authOk:"Portal認証成功",tokenOk:"トークン取得成功",tokenPinned:"この機体のトークンをテナント {tenant} に固定しました(~/.musuhi/pinned-tenant.json)",pinDeclarationInvalid:"機体の宣言ファイルが読めないためログインを中止しました: {error}",authRetry:"{delay}ms後にリトライ...",portalAuthError:"Portal認証エラー: {error}",portalAuthHelp1:"1. インターネット接続を確認してください",portalAuthHelp2:"2. Portal認証情報が正しいか確認してください",portalAuthHelp3:"3. {url} にアクセスできるか確認してください",portalAuthHelpTitle:"解決方法:",tokenSaveComplete:"トークン保存完了",tokenSaveError:"トークン保存エラー: {error}",tokenLoadError:"トークン読み込みエラー: {error}",tokenDeleteError:"トークン削除エラー: {error}",invalidTokenFormat:"CLI形式トークンのみサポートされています(CLI_xxx形式)",networkError:"ネットワークエラー: {error}",requestTimeout:"リクエストタイムアウト",responseParseError:"レスポンス解析エラー: {error}"},mcp:{toolDescriptionLoadKnowledge:"プロジェクトの参考資料を取得します",keywordDescription:"キーワード(@相談 など、そのまま指定してください。プレフィックスの追加は不要です)",knowledgeLoadSuccess:"BlueLamp 専門コンテキスト読み込み完了",knowledgeApplied:"参考情報の読み込みが完了しました。上記の内容を参考にしてご支援ください。",knowledgeNotFound:'キーワード "{keyword}" に対応する知識が見つかりませんでした',knowledgeLoadError:"知識の読み込み中にエラーが発生しました: {error}",promptNotFoundForKeyword:'キーワード "{keyword}" に対応するプロンプトが見つかりませんでした',apiReturnedError:"APIがエラーを返しました",portalApiError:"Portal APIエラー (HTTP {status})",portalApiFailed:"Portal APIから知識を取得できませんでした: {error}",portalCommunicationError:"Portal API通信エラー: {error}",noAuthToken:"認証トークンが設定されていません。ターミナルで bluelamp1〜300 のいずれかを実行するとログイン画面が出ます(~/.musuhi/portal-token.enc が作成されます)。",listMcpsFailed:"MCP一覧の取得に失敗しました: {error}",getMcpInfoFailed:"MCP情報の取得に失敗しました: {error}",callToolFailed:"ツール実行に失敗しました: {error}",violationNoToken:"認証トークンが設定されていません",violationApiError:"違反報告エラー (HTTP {status})",violationCommunicationError:"違反報告通信エラー: {error}"}};
|
package/dist/i18n/ja.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ja.js","sourceRoot":"","sources":["../../src/i18n/ja.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ja.js","sourceRoot":"","sources":["../../src/i18n/ja.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,6 +26,7 @@
|
|
|
26
26
|
* - `theme` は書かない(1 番は `hasCompletedOnboarding` 単独で消える。見た目の好みを決めない)
|
|
27
27
|
* - 既存キー・順序を保全する
|
|
28
28
|
* - 書き込みは一時ファイル → `rename` の原子置換
|
|
29
|
+
* - 読む → 書くの間は Claude Code と同じ lock(`<file>.lock`)を持つ(下の「lock」参照)
|
|
29
30
|
* - 失敗は握って起動を続ける(最悪ウィザードが出るだけ=現状に戻るだけ)
|
|
30
31
|
*
|
|
31
32
|
* ⚠️ 公式にサポートされた仕組みではない(当社が実測で確認した on-disk の振る舞い)。
|
|
@@ -68,7 +69,17 @@ export type SeedSkipReason = 'already-seeded' | 'not-an-object' | 'projects-not-
|
|
|
68
69
|
export declare function planClaudeJsonSeed(raw: unknown, projectPath: string): SeedPlan;
|
|
69
70
|
/** `settings.json` に足すべきものを計画する(純関数)。3 番(Bypass 警告)だけを扱う */
|
|
70
71
|
export declare function planSettingsSeed(raw: unknown): SeedPlan;
|
|
72
|
+
/** 取った lock。`refresh` で stale にならないよう mtime を進め、`release` で手放す */
|
|
73
|
+
export interface SeedLock {
|
|
74
|
+
refresh(): void;
|
|
75
|
+
release(): void;
|
|
76
|
+
}
|
|
71
77
|
export interface SeedIo {
|
|
78
|
+
/**
|
|
79
|
+
* `<filePath>.lock` を取る。取れなければ例外を投げる。
|
|
80
|
+
* 無い IO(テスト用の疑似 FS)は lock 無しで読み書きする。
|
|
81
|
+
*/
|
|
82
|
+
acquireLock?(filePath: string): SeedLock;
|
|
72
83
|
exists(filePath: string): boolean;
|
|
73
84
|
/** バイト数。上限判定に使う */
|
|
74
85
|
size(filePath: string): number;
|
|
@@ -77,7 +88,7 @@ export interface SeedIo {
|
|
|
77
88
|
writeAtomic(filePath: string, contents: string): void;
|
|
78
89
|
ensureDir(dirPath: string): void;
|
|
79
90
|
}
|
|
80
|
-
export type SeedFailureReason = 'read-failed' | 'parse-failed' | 'write-failed' | 'too-large';
|
|
91
|
+
export type SeedFailureReason = 'read-failed' | 'parse-failed' | 'write-failed' | 'too-large' | 'lock-failed';
|
|
81
92
|
export type SeedOutcome = {
|
|
82
93
|
seeded: true;
|
|
83
94
|
added: string[];
|
|
@@ -107,6 +118,22 @@ export declare function seedSettingsFile(filePath: string, io: SeedIo): SeedOutc
|
|
|
107
118
|
* 同一ディレクトリに置くのは、跨ぐと `rename` が EXDEV で落ち原子性を失うため。
|
|
108
119
|
* これにより **同時に何本 `bluelampN` を起動しても、読み手が半端なファイルを見ることはない**。
|
|
109
120
|
*/
|
|
121
|
+
/**
|
|
122
|
+
* lock を stale と見なすまでの時間。Claude Code が使う proper-lockfile の既定(10 秒)に揃える。
|
|
123
|
+
* 持ち主は stale の半分ごとに mtime を進めるので、生きている lock はこれを超えて古くならない。
|
|
124
|
+
*/
|
|
125
|
+
export declare const LOCK_STALE_MS = 10000;
|
|
126
|
+
/** lock を待つ上限。超えたら書かずに諦める(起動を待たせすぎない) */
|
|
127
|
+
export declare const LOCK_WAIT_MS = 10000;
|
|
128
|
+
/**
|
|
129
|
+
* proper-lockfile と同じ規約の同期版(Claude Code と同じ lock を取り合うため):
|
|
130
|
+
* - lock は `<file>.lock` の**ディレクトリ**。`mkdir` が通った者が持ち主
|
|
131
|
+
* - mtime が `LOCK_STALE_MS` より古い lock は、持ち主が死んだとみなして消して取り直す
|
|
132
|
+
*/
|
|
133
|
+
export declare function acquireFileLock(filePath: string, options?: {
|
|
134
|
+
staleMs?: number;
|
|
135
|
+
waitMs?: number;
|
|
136
|
+
}): SeedLock;
|
|
110
137
|
export declare const nodeSeedIo: SeedIo;
|
|
111
138
|
/**
|
|
112
139
|
* `.claude.json` の絶対パス。
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claudeOnboardingSeed.d.ts","sourceRoot":"","sources":["../../src/lib/claudeOnboardingSeed.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"claudeOnboardingSeed.d.ts","sourceRoot":"","sources":["../../src/lib/claudeOnboardingSeed.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);s&&!("get"in s?!t.__esModule:s.writable||s.configurable)||(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(){var 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)};return function(t){if(t&&t.__esModule)return t;var r={};if(null!=t)for(var n=e(t),s=0;s<n.length;s++)"default"!==n[s]&&__createBinding(r,t,n[s]);return __setModuleDefault(r,t),r}}();Object.defineProperty(exports,"__esModule",{value:!0}),exports.nodeSeedIo=exports.MAX_SEED_RETRIES=exports.MAX_READ_BYTES=exports.BYPASS_KEY=exports.TRUST_KEY=exports.ONBOARDING_KEY=void 0,exports.planClaudeJsonSeed=planClaudeJsonSeed,exports.planSettingsSeed=planSettingsSeed,exports.seedClaudeJsonFile=seedClaudeJsonFile,exports.seedSettingsFile=seedSettingsFile,exports.defaultClaudeJsonPath=defaultClaudeJsonPath,exports.defaultSettingsPath=defaultSettingsPath,exports.seedClaudeOnboarding=seedClaudeOnboarding;const fs=__importStar(require("node:fs")),os=__importStar(require("node:os")),path=__importStar(require("node:path"));function isPlainObject(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function has(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function planClaudeJsonSeed(e,t){if(void 0===e)return{changed:!0,added:[exports.ONBOARDING_KEY,`projects[${t}].${exports.TRUST_KEY}`],next:{[exports.ONBOARDING_KEY]:!0,projects:{[t]:{[exports.TRUST_KEY]:!0}}}};if(!isPlainObject(e))return{changed:!1,added:[],reason:"not-an-object"};const r=[];let n=e;has(e,exports.ONBOARDING_KEY)||(n={...n,[exports.ONBOARDING_KEY]:!0},r.push(exports.ONBOARDING_KEY));const s=e.projects;if(void 0===s||isPlainObject(s)){const e=isPlainObject(s)?s:{},a=e[t];void 0===a?(n={...n,projects:{...e,[t]:{[exports.TRUST_KEY]:!0}}},r.push(`projects[${t}].${exports.TRUST_KEY}`)):isPlainObject(a)&&!has(a,exports.TRUST_KEY)&&(n={...n,projects:{...e,[t]:{...a,[exports.TRUST_KEY]:!0}}},r.push(`projects[${t}].${exports.TRUST_KEY}`))}else if(0===r.length)return{changed:!1,added:[],reason:"projects-not-an-object"};return 0===r.length?{changed:!1,added:[],reason:"already-seeded"}:{changed:!0,next:n,added:r}}function planSettingsSeed(e){return void 0===e?{changed:!0,added:[exports.BYPASS_KEY],next:{[exports.BYPASS_KEY]:!0}}:isPlainObject(e)?has(e,exports.BYPASS_KEY)?{changed:!1,added:[],reason:"already-seeded"}:{changed:!0,added:[exports.BYPASS_KEY],next:{...e,[exports.BYPASS_KEY]:!0}}:{changed:!1,added:[],reason:"not-an-object"}}function seedFile(e,t,r){let n=attemptSeed(e,t,r);if(!n.seeded)return n;for(let s=0;s<exports.MAX_SEED_RETRIES;s+=1){const s=attemptSeed(e,t,r);if(!s.seeded)break;n=s}return n}function attemptSeed(e,t,r){
|
|
1
|
+
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);s&&!("get"in s?!t.__esModule:s.writable||s.configurable)||(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(){var 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)};return function(t){if(t&&t.__esModule)return t;var r={};if(null!=t)for(var n=e(t),s=0;s<n.length;s++)"default"!==n[s]&&__createBinding(r,t,n[s]);return __setModuleDefault(r,t),r}}();Object.defineProperty(exports,"__esModule",{value:!0}),exports.nodeSeedIo=exports.LOCK_WAIT_MS=exports.LOCK_STALE_MS=exports.MAX_SEED_RETRIES=exports.MAX_READ_BYTES=exports.BYPASS_KEY=exports.TRUST_KEY=exports.ONBOARDING_KEY=void 0,exports.planClaudeJsonSeed=planClaudeJsonSeed,exports.planSettingsSeed=planSettingsSeed,exports.seedClaudeJsonFile=seedClaudeJsonFile,exports.seedSettingsFile=seedSettingsFile,exports.acquireFileLock=acquireFileLock,exports.defaultClaudeJsonPath=defaultClaudeJsonPath,exports.defaultSettingsPath=defaultSettingsPath,exports.seedClaudeOnboarding=seedClaudeOnboarding;const fs=__importStar(require("node:fs")),os=__importStar(require("node:os")),path=__importStar(require("node:path"));function isPlainObject(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function has(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function planClaudeJsonSeed(e,t){if(void 0===e)return{changed:!0,added:[exports.ONBOARDING_KEY,`projects[${t}].${exports.TRUST_KEY}`],next:{[exports.ONBOARDING_KEY]:!0,projects:{[t]:{[exports.TRUST_KEY]:!0}}}};if(!isPlainObject(e))return{changed:!1,added:[],reason:"not-an-object"};const r=[];let n=e;has(e,exports.ONBOARDING_KEY)||(n={...n,[exports.ONBOARDING_KEY]:!0},r.push(exports.ONBOARDING_KEY));const s=e.projects;if(void 0===s||isPlainObject(s)){const e=isPlainObject(s)?s:{},a=e[t];void 0===a?(n={...n,projects:{...e,[t]:{[exports.TRUST_KEY]:!0}}},r.push(`projects[${t}].${exports.TRUST_KEY}`)):isPlainObject(a)&&!has(a,exports.TRUST_KEY)&&(n={...n,projects:{...e,[t]:{...a,[exports.TRUST_KEY]:!0}}},r.push(`projects[${t}].${exports.TRUST_KEY}`))}else if(0===r.length)return{changed:!1,added:[],reason:"projects-not-an-object"};return 0===r.length?{changed:!1,added:[],reason:"already-seeded"}:{changed:!0,next:n,added:r}}function planSettingsSeed(e){return void 0===e?{changed:!0,added:[exports.BYPASS_KEY],next:{[exports.BYPASS_KEY]:!0}}:isPlainObject(e)?has(e,exports.BYPASS_KEY)?{changed:!1,added:[],reason:"already-seeded"}:{changed:!0,added:[exports.BYPASS_KEY],next:{...e,[exports.BYPASS_KEY]:!0}}:{changed:!1,added:[],reason:"not-an-object"}}function seedFile(e,t,r){let n=attemptSeed(e,t,r);if(!n.seeded)return n;for(let s=0;s<exports.MAX_SEED_RETRIES;s+=1){const s=attemptSeed(e,t,r);if(!s.seeded)break;n=s}return n}function attemptSeed(e,t,r){let n;if(r.acquireLock)try{r.ensureDir(path.dirname(e)),n=r.acquireLock(e)}catch(e){return{seeded:!1,reason:"lock-failed",detail:messageOf(e)}}try{return attemptSeedLocked(e,t,r,n)}finally{n?.release()}}function attemptSeedLocked(e,t,r,n){const s=r.exists(e);let a;if(s){let t,n;try{t=r.size(e)}catch(e){return{seeded:!1,reason:"read-failed",detail:messageOf(e)}}if(t>exports.MAX_READ_BYTES)return{seeded:!1,reason:"too-large",detail:`${t} bytes`};try{n=r.read(e)}catch(e){return{seeded:!1,reason:"read-failed",detail:messageOf(e)}}try{a=JSON.parse(n)}catch(e){return{seeded:!1,reason:"parse-failed",detail:messageOf(e)}}}const o=t(a);if(!o.changed||!o.next)return{seeded:!1,reason:o.reason??"already-seeded"};let d;try{d=`${JSON.stringify(o.next,null,2)}\n`,JSON.parse(d)}catch(e){return{seeded:!1,reason:"write-failed",detail:messageOf(e)}}try{n?.refresh(),r.ensureDir(path.dirname(e)),r.writeAtomic(e,d)}catch(e){return{seeded:!1,reason:"write-failed",detail:messageOf(e)}}return{seeded:!0,added:o.added,created:!s}}function seedClaudeJsonFile(e,t,r){return seedFile(e,e=>planClaudeJsonSeed(e,t),r)}function seedSettingsFile(e,t){return seedFile(e,planSettingsSeed,t)}function sleepSync(e){Atomics.wait(new Int32Array(new SharedArrayBuffer(4)),0,0,e)}function lockPathOf(e){return`${e}.lock`}function acquireFileLock(e,t={}){const r=t.staleMs??exports.LOCK_STALE_MS,n=Date.now()+(t.waitMs??exports.LOCK_WAIT_MS),s=lockPathOf(e);let a=10;for(;;){try{fs.mkdirSync(s);let e=fs.statSync(s).mtimeMs;return{refresh:()=>{const t=new Date;fs.utimesSync(s,t,t),e=fs.statSync(s).mtimeMs},release:()=>{try{fs.statSync(s).mtimeMs===e&&fs.rmdirSync(s)}catch{}}}}catch(e){if("EEXIST"!==e.code)throw e}try{if(fs.statSync(s).mtimeMs<Date.now()-r){fs.rmdirSync(s);continue}}catch(e){if("ENOENT"===e.code)continue;throw e}if(Date.now()>=n)throw new Error(`lock が空かない: ${s}`);sleepSync(a),a=Math.min(2*a,200)}}function defaultClaudeJsonPath(){const e=process.env.CLAUDE_CONFIG_DIR,t=e&&e.length>0?e:os.homedir();return path.join(t,".claude.json")}function defaultSettingsPath(){const e=process.env.CLAUDE_CONFIG_DIR,t=e&&e.length>0?e:path.join(os.homedir(),".claude");return path.join(t,"settings.json")}function seedClaudeOnboarding(e=process.cwd()){return{claudeJson:seedClaudeJsonFile(defaultClaudeJsonPath(),e,exports.nodeSeedIo),settings:seedSettingsFile(defaultSettingsPath(),exports.nodeSeedIo)}}function messageOf(e){return e instanceof Error?e.message:String(e)}exports.ONBOARDING_KEY="hasCompletedOnboarding",exports.TRUST_KEY="hasTrustDialogAccepted",exports.BYPASS_KEY="skipDangerousModePermissionPrompt",exports.MAX_READ_BYTES=67108864,exports.MAX_SEED_RETRIES=2,exports.LOCK_STALE_MS=1e4,exports.LOCK_WAIT_MS=1e4,exports.nodeSeedIo={acquireLock:e=>acquireFileLock(e),exists:e=>fs.existsSync(e),size:e=>fs.statSync(e).size,read:e=>fs.readFileSync(e,"utf-8"),ensureDir:e=>{fs.mkdirSync(e,{recursive:!0})},writeAtomic:(e,t)=>{const r=path.dirname(e),n=path.join(r,`.${path.basename(e)}.bluelamp-${process.pid}-${Date.now()}-${Math.random().toString(36).slice(2)}.tmp`);let s=384;try{s=511&fs.statSync(e).mode}catch{}fs.writeFileSync(n,t,{encoding:"utf-8",mode:s});try{fs.renameSync(n,e)}catch(e){try{fs.unlinkSync(n)}catch{}throw e}}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claudeOnboardingSeed.js","sourceRoot":"","sources":["../../src/lib/claudeOnboardingSeed.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"claudeOnboardingSeed.js","sourceRoot":"","sources":["../../src/lib/claudeOnboardingSeed.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 起動子が Claude Code へ渡す最初の指示(initialPrompt)を組み立てる(箱 n=2055・純関数)。
|
|
3
|
+
*
|
|
4
|
+
* initialPrompt は端末に出る文字ではなく、**会話の本文**として描かれる。ここに ANSI の色コード
|
|
5
|
+
* (`\x1b[34m` 等)を入れると、色にならずに `[34m` `[0m` の文字列として会員の最初の画面に出る
|
|
6
|
+
* (2026-05-26 の移植 05b00578 から全版で出ていた)。⇒ 本文には ESC を 1 文字も入れない。
|
|
7
|
+
* 端末に console.log で出す行の色は別物(端末が色として解釈する)なので、ここでは扱わない。
|
|
8
|
+
*
|
|
9
|
+
* 呼び手から来る文字列(i18n の文言・--task-file の本文)に色コードが混じっていても、
|
|
10
|
+
* 同じ理由で本文へは持ち込まない(除いてから組み立てる)。
|
|
11
|
+
*/
|
|
12
|
+
export interface InitialPromptInput {
|
|
13
|
+
/** 1 行目(例: 「BlueLamp に接続しました」) */
|
|
14
|
+
authActivated: string;
|
|
15
|
+
/** 箱のロゴ(i18n の brandTitle・build-brand が白ラベル化する) */
|
|
16
|
+
brandTitle: string;
|
|
17
|
+
/** 箱の 2 行目(例: 「さあ始めましょう」) */
|
|
18
|
+
title: string;
|
|
19
|
+
/** 入力欄の案内(板 #528 F5) */
|
|
20
|
+
inputHint: string;
|
|
21
|
+
/** 最初の指示(挨拶の指示・task の本文・取得失敗時の案内) */
|
|
22
|
+
startInstruction: string;
|
|
23
|
+
}
|
|
24
|
+
export declare function stripAnsi(text: string): string;
|
|
25
|
+
/** 等幅での表示幅(全角=2)。「さあ始めましょう」を length で数えると右の罫線が 8 桁ずれる。 */
|
|
26
|
+
export declare function displayWidth(text: string): number;
|
|
27
|
+
export declare function buildInitialPrompt(input: InitialPromptInput): string;
|
|
28
|
+
//# sourceMappingURL=initialPrompt.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"initialPrompt.d.ts","sourceRoot":"","sources":["../../src/lib/initialPrompt.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,MAAM,WAAW,kBAAkB;IACjC,kCAAkC;IAClC,aAAa,EAAE,MAAM,CAAC;IACtB,mDAAmD;IACnD,UAAU,EAAE,MAAM,CAAC;IACnB,6BAA6B;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,wBAAwB;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,qCAAqC;IACrC,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAKD,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE9C;AAMD,0DAA0D;AAC1D,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAejD;AAMD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,kBAAkB,GAAG,MAAM,CAoBpE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.stripAnsi=stripAnsi,exports.displayWidth=displayWidth,exports.buildInitialPrompt=buildInitialPrompt;const ANSI_SEQUENCE=/\x1b(?:\[[0-?]*[ -/]*[@-~]|[@-Z\\-_])?/g;function stripAnsi(t){return t.replace(ANSI_SEQUENCE,"")}const BOX_INNER=65,INDENT=" ".repeat(20);function displayWidth(t){let i=0;for(const n of t){const t=n.codePointAt(0)??0;i+=t>=4352&&t<=4447||t>=11904&&t<=42191||t>=44032&&t<=55203||t>=63744&&t<=64255||t>=65072&&t<=65103||t>=65280&&t<=65376||t>=65504&&t<=65510?2:1}return i}function boxLine(t){return`│${t}${" ".repeat(Math.max(0,BOX_INNER-displayWidth(t)))}│`}function buildInitialPrompt(t){const i=stripAnsi(t.brandTitle),n=stripAnsi(t.title),e="─".repeat(BOX_INNER),r=[`╭${e}╮`,boxLine(""),boxLine(`${INDENT}${i}`),boxLine(`${INDENT}${n}`),boxLine(""),`╰${e}╯`].join("\n");return`> ${stripAnsi(t.authActivated)}\n\n${r}\n\n${stripAnsi(t.inputHint)}\n\n${stripAnsi(t.startInstruction)}`}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"initialPrompt.js","sourceRoot":"","sources":["../../src/lib/initialPrompt.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;AAkBH,8BAEC;AAOD,oCAeC;AAMD,gDAoBC;AArDD,4DAA4D;AAC5D,MAAM,aAAa,GAAG,yCAAyC,CAAC;AAEhE,SAAgB,SAAS,CAAC,IAAY;IACpC,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;AACzC,CAAC;AAED,wBAAwB;AACxB,MAAM,SAAS,GAAG,EAAE,CAAC;AACrB,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAE9B,0DAA0D;AAC1D,SAAgB,YAAY,CAAC,IAAY;IACvC,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC;QACtB,MAAM,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,IAAI,GACR,CAAC,EAAE,IAAI,MAAM,IAAI,EAAE,IAAI,MAAM,CAAC;YAC9B,CAAC,EAAE,IAAI,MAAM,IAAI,EAAE,IAAI,MAAM,CAAC;YAC9B,CAAC,EAAE,IAAI,MAAM,IAAI,EAAE,IAAI,MAAM,CAAC;YAC9B,CAAC,EAAE,IAAI,MAAM,IAAI,EAAE,IAAI,MAAM,CAAC;YAC9B,CAAC,EAAE,IAAI,MAAM,IAAI,EAAE,IAAI,MAAM,CAAC;YAC9B,CAAC,EAAE,IAAI,MAAM,IAAI,EAAE,IAAI,MAAM,CAAC;YAC9B,CAAC,EAAE,IAAI,MAAM,IAAI,EAAE,IAAI,MAAM,CAAC,CAAC;QACjC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,OAAO,CAAC,OAAe;IAC9B,OAAO,IAAI,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;AACrF,CAAC;AAED,SAAgB,kBAAkB,CAAC,KAAyB;IAC1D,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC/C,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACrC,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACrC,MAAM,GAAG,GAAG;QACV,IAAI,MAAM,GAAG;QACb,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,GAAG,MAAM,GAAG,UAAU,EAAE,CAAC;QACjC,OAAO,CAAC,GAAG,MAAM,GAAG,KAAK,EAAE,CAAC;QAC5B,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,MAAM,GAAG;KACd,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEb,OAAO,KAAK,SAAS,CAAC,KAAK,CAAC,aAAa,CAAC;;EAE1C,GAAG;;EAEH,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC;;EAE1B,SAAS,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC;AACtC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "bluelamp",
|
|
3
|
-
"version": "6.6.
|
|
3
|
+
"version": "6.6.16",
|
|
4
4
|
"description": "BlueLamp CLI: 旧 bluelampportal/mcp の auth / 200+ bluelamp1-N binary / postinstall scripts を TypeScript 化して monorepo に統合したパッケージ。",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"bluelamp",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"prepublishOnly": "pnpm run build"
|
|
45
45
|
},
|
|
46
46
|
"dependencies": {
|
|
47
|
-
"@bluelamp/cli-token": "1.0.
|
|
47
|
+
"@bluelamp/cli-token": "1.0.3",
|
|
48
48
|
"@modelcontextprotocol/sdk": "^1.0.0",
|
|
49
49
|
"cross-spawn": "^7.0.6",
|
|
50
50
|
"dotenv": "^16.6.1",
|
|
@@ -359,7 +359,6 @@
|
|
|
359
359
|
"bluelamp297": "./dist/bin/bluelamp297.mjs",
|
|
360
360
|
"bluelamp298": "./dist/bin/bluelamp298.mjs",
|
|
361
361
|
"bluelamp299": "./dist/bin/bluelamp299.mjs",
|
|
362
|
-
"bluelamp300": "./dist/bin/bluelamp300.mjs"
|
|
363
|
-
"bluelamp-secret": "./dist/bin/bluelamp-secret.mjs"
|
|
362
|
+
"bluelamp300": "./dist/bin/bluelamp300.mjs"
|
|
364
363
|
}
|
|
365
364
|
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
import{spawn}from"node:child_process";import{constants as osConstants}from"node:os";import secretExecModule from"../lib/secretExec.js";import tokenManagerModule from"../auth/TokenManager.js";const{runSecretExec:runSecretExec}=secretExecModule,{TokenManager:TokenManager}=tokenManagerModule,FORWARDED=["SIGINT","SIGTERM","SIGHUP"];runSecretExec(process.argv.slice(2),{env:process.env,loadToken:()=>TokenManager.loadTokenStringSync(),fetch:(e,r)=>globalThis.fetch(e,r),spawn:(e,r,s)=>spawn(e,r,s),stderr:e=>process.stderr.write(e),signalNumbers:osConstants.signals,onParentSignal:e=>{const r=FORWARDED.map(r=>{const s=()=>{"SIGINT"!==r&&e(r)};return process.on(r,s),[r,s]});return()=>r.forEach(([e,r])=>process.off(e,r))}}).then(e=>process.exit(e),()=>{process.stderr.write("bluelamp-secret: 想定外の失敗で止まりました\n"),process.exit(1)});
|
package/dist/lib/secretExec.d.ts
DELETED
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `bluelamp-secret exec` — 金庫の値を**子プロセスの環境変数にだけ**入れてコマンドを走らせる(箱 n=2018 設計④)。
|
|
3
|
-
*
|
|
4
|
-
* 🕳 塞いでいる穴: MCP の `get_secret` は値を返り値にしていたため、値が会話の転写に残った。
|
|
5
|
-
* その口を閉じると、値を Bash で使っていた手順(21 日で 235 回)が壊れる。⇒ 値を「見せずに使う」口をここに置く。
|
|
6
|
-
*
|
|
7
|
-
* 🔑 値の通り道は「金庫の HTTP 応答 → 子の env」の 1 本だけ。
|
|
8
|
-
* ⛔ argv・標準出力・標準エラー・ログ・ファイル・エラーの文言に値を出さない。
|
|
9
|
-
* ⛔ HTTP の本文・fetch の例外をそのまま出さない(本文は値を、例外は要求を引用しうる)。
|
|
10
|
-
* 失敗は「どの ENV 名・どの金庫の名前が・なぜ」だけを返す。
|
|
11
|
-
* 🔑 使用の記録: `GET /vault/:service` は backend 側で監査 `get`(誰が・どの秘密を)を 1 行書く。
|
|
12
|
-
*
|
|
13
|
-
* 判定と組み立ては純粋関数(unit で直接撃つ)、網と子プロセスは `runSecretExec` の deps に寄せる。
|
|
14
|
-
*/
|
|
15
|
-
/** ENV 名として受ける形。⛔ これ以外(小文字・記号・先頭数字)は受けない */
|
|
16
|
-
export declare const ENV_NAME_PATTERN: RegExp;
|
|
17
|
-
/** 既定のポータル API(lib/mcp-server/portal-api-client.cjs・TokenManager と同じ値) */
|
|
18
|
-
export declare const DEFAULT_PORTAL_API_BASE_URL = "https://api.motohi.jp/api/bluelamp";
|
|
19
|
-
export declare const USAGE: string;
|
|
20
|
-
export interface SecretBinding {
|
|
21
|
-
env: string;
|
|
22
|
-
name: string;
|
|
23
|
-
}
|
|
24
|
-
export type ParseResult = {
|
|
25
|
-
ok: true;
|
|
26
|
-
bindings: SecretBinding[];
|
|
27
|
-
command: string;
|
|
28
|
-
args: string[];
|
|
29
|
-
} | {
|
|
30
|
-
ok: false;
|
|
31
|
-
help: boolean;
|
|
32
|
-
error: string;
|
|
33
|
-
};
|
|
34
|
-
/** 引数を解析する(`process.argv.slice(2)` を受ける)。値はここに来ない=金庫の名前だけ */
|
|
35
|
-
export declare function parseExecArgs(argv: readonly string[]): ParseResult;
|
|
36
|
-
/** 基底 URL(BLUELAMP_PORTAL_API_BASE_URL > PORTAL_URL > 既定。portal-api-client.cjs と同じ順) */
|
|
37
|
-
export declare function resolvePortalApiBaseUrl(env: Readonly<Record<string, string | undefined>>): string;
|
|
38
|
-
/**
|
|
39
|
-
* 金庫の 1 件を引く URL。
|
|
40
|
-
* 🔑 vault の sub-app は内部で `/api/vault/...` に経路を切るが、bluelamp module ごと `/api/bluelamp` に
|
|
41
|
-
* 載っているので外から見える経路は `<base>/vault/...`(base は /api/bluelamp まで含む)。
|
|
42
|
-
* 🔬 実測(無認証): `/api/bluelamp/api/vault/x` → 404/`/api/bluelamp/vault/x` → 401。
|
|
43
|
-
* mcp-list/bluelamp/playwright/src/fillSecret.ts の VAULT_FILL_PATH と同じ結論。
|
|
44
|
-
*/
|
|
45
|
-
export declare function buildVaultUrl(baseUrl: string, name: string): string;
|
|
46
|
-
/** 子の env を合成する(親を書き換えない) */
|
|
47
|
-
export declare function composeChildEnv(parentEnv: Readonly<Record<string, string | undefined>>, values: Readonly<Record<string, string>>): Record<string, string>;
|
|
48
|
-
/** 金庫の応答本文から値を取り出す。形が違えば null(⛔ 本文を呼び手へ返さない) */
|
|
49
|
-
export declare function extractSecretValue(body: unknown): string | null;
|
|
50
|
-
/** HTTP の状態を理由の文言にする(⛔ 本文は使わない) */
|
|
51
|
-
export declare function describeVaultStatus(status: number): string;
|
|
52
|
-
/** 子の終わり方を終了コードにする(シグナルは 128+番号=シェルと同じ) */
|
|
53
|
-
export declare function exitCodeOf(code: number | null, signal: string | null, signalNumbers: Readonly<Record<string, number>>): number;
|
|
54
|
-
interface FetchResponseLike {
|
|
55
|
-
ok: boolean;
|
|
56
|
-
status: number;
|
|
57
|
-
json(): Promise<unknown>;
|
|
58
|
-
}
|
|
59
|
-
interface ChildLike {
|
|
60
|
-
on(event: 'exit', cb: (code: number | null, signal: string | null) => void): unknown;
|
|
61
|
-
on(event: 'error', cb: (err: {
|
|
62
|
-
code?: string;
|
|
63
|
-
}) => void): unknown;
|
|
64
|
-
kill(signal?: string): unknown;
|
|
65
|
-
}
|
|
66
|
-
export interface SecretExecDeps {
|
|
67
|
-
env: Readonly<Record<string, string | undefined>>;
|
|
68
|
-
loadToken: () => string | null;
|
|
69
|
-
fetch: (url: string, init: {
|
|
70
|
-
method: string;
|
|
71
|
-
headers: Record<string, string>;
|
|
72
|
-
}) => Promise<FetchResponseLike>;
|
|
73
|
-
spawn: (command: string, args: string[], options: {
|
|
74
|
-
stdio: 'inherit';
|
|
75
|
-
shell: false;
|
|
76
|
-
env: Record<string, string>;
|
|
77
|
-
}) => ChildLike;
|
|
78
|
-
stderr: (text: string) => void;
|
|
79
|
-
signalNumbers: Readonly<Record<string, number>>;
|
|
80
|
-
/** 親が受けたシグナルを子へ回す口(無ければ回さない)。戻り値は解除関数 */
|
|
81
|
-
onParentSignal?: (forward: (signal: string) => void) => () => void;
|
|
82
|
-
}
|
|
83
|
-
/** 実行する。戻り値は終了コード */
|
|
84
|
-
export declare function runSecretExec(argv: readonly string[], deps: SecretExecDeps): Promise<number>;
|
|
85
|
-
export {};
|
|
86
|
-
//# sourceMappingURL=secretExec.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"secretExec.d.ts","sourceRoot":"","sources":["../../src/lib/secretExec.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/secretExec.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";function parseExecArgs(e){if(0===e.length||"-h"===e[0]||"--help"===e[0]||"help"===e[0])return{ok:!1,help:!0,error:""};if("exec"!==e[0])return{ok:!1,help:!1,error:"不明な操作です(受けるのは exec だけ)"};const r=e.indexOf("--");if(-1===r)return{ok:!1,help:!1,error:"`--` の後に実行するコマンドを書いてください"};const t=e.slice(1,r),o=e[r+1];if(void 0===o||""===o)return{ok:!1,help:!1,error:"`--` の後に実行するコマンドがありません"};if(0===t.length)return{ok:!1,help:!1,error:"<ENV名>=<金庫の名前> を 1 つ以上書いてください"};const n=[],s=new Set;for(const e of t){const r=e.indexOf("=");if(r<=0)return{ok:!1,help:!1,error:`<ENV名>=<金庫の名前> の形ではない引数があります(${n.length+1} 番目)`};const t=e.slice(0,r),o=e.slice(r+1);if(!exports.ENV_NAME_PATTERN.test(t))return{ok:!1,help:!1,error:`ENV 名は ^[A-Z_][A-Z0-9_]*$ の形だけ受けます(${n.length+1} 番目)`};if(""===o)return{ok:!1,help:!1,error:`${t}: 金庫の名前が空です`};if("."===o||".."===o)return{ok:!1,help:!1,error:`${t}: 金庫の名前に . / .. は使えません`};if(s.has(t))return{ok:!1,help:!1,error:`${t}: 同じ ENV 名が 2 回あります`};s.add(t),n.push({env:t,name:o})}return{ok:!0,bindings:n,command:o,args:e.slice(r+2)}}function resolvePortalApiBaseUrl(e){return(e.BLUELAMP_PORTAL_API_BASE_URL||e.PORTAL_URL||exports.DEFAULT_PORTAL_API_BASE_URL).replace(/\/+$/,"")}function buildVaultUrl(e,r){return`${e}/vault/${encodeURIComponent(r)}`}function composeChildEnv(e,r){const t={};for(const[r,o]of Object.entries(e))"string"==typeof o&&(t[r]=o);for(const[e,o]of Object.entries(r))t[e]=o;return t}function extractSecretValue(e){if(!e||"object"!=typeof e)return null;const r=e;return!0===r.success&&r.data&&"object"==typeof r.data&&"string"==typeof r.data.secret?r.data.secret:null}function describeVaultStatus(e){return 401===e?"未ログインかトークンが無効です(bluelamp1 などでログインし直してください)":403===e?"この秘密へのアクセス権がありません":404===e?"金庫に見つかりません":`金庫が HTTP ${e} を返しました`}function exitCodeOf(e,r,t){return"number"==typeof e?e:r&&"number"==typeof t[r]?128+t[r]:1}Object.defineProperty(exports,"__esModule",{value:!0}),exports.USAGE=exports.DEFAULT_PORTAL_API_BASE_URL=exports.ENV_NAME_PATTERN=void 0,exports.parseExecArgs=parseExecArgs,exports.resolvePortalApiBaseUrl=resolvePortalApiBaseUrl,exports.buildVaultUrl=buildVaultUrl,exports.composeChildEnv=composeChildEnv,exports.extractSecretValue=extractSecretValue,exports.describeVaultStatus=describeVaultStatus,exports.exitCodeOf=exitCodeOf,exports.runSecretExec=runSecretExec,exports.ENV_NAME_PATTERN=/^[A-Z_][A-Z0-9_]*$/,exports.DEFAULT_PORTAL_API_BASE_URL="https://api.motohi.jp/api/bluelamp",exports.USAGE='使い方: bluelamp-secret exec <ENV名>=<金庫の名前> [<ENV名>=<金庫の名前> …] -- <コマンド> [引数…]\n 金庫の値を子プロセスの環境変数にだけ入れて <コマンド> を実行し、その終了コードで終わります。\n 値は画面・引数・ログに出ません。シェルの展開が要るときは -- sh -c \'psql "$PGURL" -c "select 1"\' のように渡します。\n';const PREFIX="bluelamp-secret: ";async function runSecretExec(e,r){const t=parseExecArgs(e);if(!t.ok)return t.help?(r.stderr(exports.USAGE),0===e.length?2:0):(r.stderr(`${PREFIX}${t.error}\n${exports.USAGE}`),2);const o=r.loadToken();if(!o)return r.stderr(`${PREFIX}未ログインです(bluelamp1 などでログインしてから撃ってください)\n`),1;const n=resolvePortalApiBaseUrl(r.env),s={};for(const{env:e,name:c}of t.bindings){let t,l;try{t=await r.fetch(buildVaultUrl(n,c),{method:"GET",headers:{"X-CLI-Token":o,Accept:"application/json","User-Agent":"bluelamp-secret/1"}})}catch{return r.stderr(`${PREFIX}${e}=${c}: ポータルに届きませんでした\n`),1}if(!t.ok)return r.stderr(`${PREFIX}${e}=${c}: ${describeVaultStatus(t.status)}\n`),1;try{l=await t.json()}catch{return r.stderr(`${PREFIX}${e}=${c}: 金庫の応答を読めませんでした\n`),1}const a=extractSecretValue(l);if(null===a)return r.stderr(`${PREFIX}${e}=${c}: 金庫の応答に値がありませんでした\n`),1;s[e]=a}const c=composeChildEnv(r.env,s);return new Promise(e=>{let o=!1,n=()=>{};const s=r=>{o||(o=!0,n(),e(r))};let l;try{l=r.spawn(t.command,t.args,{stdio:"inherit",shell:!1,env:c})}catch(e){const o=e?.code;return r.stderr(`${PREFIX}コマンドを起動できませんでした: ${t.command}${o?`(${o})`:""}\n`),void s(127)}r.onParentSignal&&(n=r.onParentSignal(e=>{try{l.kill(e)}catch{}})),l.on("error",e=>{r.stderr(`${PREFIX}コマンドを起動できませんでした: ${t.command}${e?.code?`(${e.code})`:""}\n`),s(127)}),l.on("exit",(e,t)=>s(exitCodeOf(e,t,r.signalNumbers)))})}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"secretExec.js","sourceRoot":"","sources":["../../src/lib/secretExec.ts"],"names":[],"mappings":"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"}
|