mulmoclaude 0.3.0 → 0.4.0
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/bin/mulmoclaude.js +7 -24
- package/client/assets/html2canvas-Cx501zZr-Cv5snK9D.js +5 -0
- package/client/assets/index-CubzmCVK.css +2 -0
- package/client/assets/{index-eHWB79u5.js → index-DtcyExH9.js} +80 -61
- package/client/assets/{index.es-D4YyL_Dg-BfRHLTZV.js → index.es-D4YyL_Dg-DnizuhIY.js} +5 -5
- package/client/index.html +2 -4
- package/package.json +13 -13
- package/server/agent/attachmentConverter.ts +2 -2
- package/server/agent/index.ts +9 -3
- package/server/agent/mcp-tools/index.ts +6 -6
- package/server/agent/mcp-tools/x.ts +2 -1
- package/server/agent/prompt.ts +187 -26
- package/server/agent/resumeFailover.ts +5 -5
- package/server/agent/sandboxMounts.ts +3 -3
- package/server/api/auth/bearerAuth.ts +3 -3
- package/server/api/auth/token.ts +2 -2
- package/server/api/routes/agent.ts +21 -3
- package/server/api/routes/config.ts +1 -1
- package/server/api/routes/files.ts +13 -12
- package/server/api/routes/html.ts +2 -2
- package/server/api/routes/image.ts +7 -7
- package/server/api/routes/mulmo-script.ts +33 -31
- package/server/api/routes/pdf.ts +2 -2
- package/server/api/routes/plugins.ts +16 -6
- package/server/api/routes/roles.ts +2 -2
- package/server/api/routes/scheduler.ts +8 -6
- package/server/api/routes/schedulerTasks.ts +5 -3
- package/server/api/routes/sessions.ts +2 -2
- package/server/api/routes/sessionsCursor.ts +4 -4
- package/server/api/routes/skills.ts +5 -5
- package/server/api/routes/sources.ts +3 -3
- package/server/api/routes/todosHandlers.ts +1 -1
- package/server/api/routes/todosItemsHandlers.ts +14 -14
- package/server/api/routes/wiki.ts +22 -8
- package/server/api/sandboxStatus.ts +1 -1
- package/server/events/notifications.ts +6 -6
- package/server/events/pub-sub/index.ts +3 -3
- package/server/events/relay-client.ts +17 -16
- package/server/index.ts +40 -46
- package/server/system/config.ts +5 -5
- package/server/system/credentials.ts +7 -5
- package/server/system/env.ts +5 -5
- package/server/utils/files/atomic.ts +11 -11
- package/server/utils/files/image-store.ts +17 -6
- package/server/utils/files/journal-io.ts +2 -2
- package/server/utils/files/json.ts +5 -5
- package/server/utils/files/markdown-store.ts +4 -4
- package/server/utils/files/reference-dirs-io.ts +3 -3
- package/server/utils/files/roles-io.ts +4 -4
- package/server/utils/files/safe.ts +14 -14
- package/server/utils/files/scheduler-overrides-io.ts +2 -2
- package/server/utils/files/spreadsheet-store.ts +5 -5
- package/server/utils/files/workspace-io.ts +12 -12
- package/server/utils/gemini.ts +2 -2
- package/server/utils/gitignore.ts +9 -9
- package/server/utils/json.ts +5 -5
- package/server/utils/logBackgroundError.ts +12 -3
- package/server/utils/markdown.ts +5 -5
- package/server/utils/port.d.mts +6 -0
- package/server/utils/port.mjs +48 -0
- package/server/utils/request.ts +12 -6
- package/server/utils/spawn.ts +1 -1
- package/server/utils/types.ts +2 -2
- package/server/workspace/chat-index/summarizer.ts +4 -4
- package/server/workspace/custom-dirs.ts +5 -5
- package/server/workspace/journal/diff.ts +2 -2
- package/server/workspace/journal/index.ts +4 -4
- package/server/workspace/journal/optimizationPass.ts +2 -2
- package/server/workspace/journal/state.ts +6 -6
- package/server/workspace/paths.ts +3 -3
- package/server/workspace/reference-dirs.ts +3 -3
- package/server/workspace/skills/parser.ts +6 -6
- package/server/workspace/skills/scheduler.ts +3 -3
- package/server/workspace/skills/writer.ts +3 -3
- package/server/workspace/sources/arxivDiscovery.ts +2 -2
- package/server/workspace/sources/fetchers/rss.ts +5 -5
- package/server/workspace/sources/fetchers/rssParser.ts +4 -4
- package/server/workspace/sources/interests.ts +3 -3
- package/server/workspace/sources/paths.ts +6 -6
- package/server/workspace/sources/pipeline/fetch.ts +36 -13
- package/server/workspace/sources/pipeline/index.ts +2 -7
- package/server/workspace/sources/pipeline/notify.ts +3 -3
- package/server/workspace/sources/pipeline/plan.ts +11 -9
- package/server/workspace/sources/pipeline/write.ts +5 -5
- package/server/workspace/sources/rateLimiter.ts +1 -1
- package/server/workspace/sources/sourceState.ts +9 -4
- package/server/workspace/sources/types.ts +9 -0
- package/server/workspace/sources/urls.ts +1 -1
- package/server/workspace/tool-trace/classify.ts +4 -4
- package/server/workspace/workspace.ts +7 -7
- package/src/App.vue +286 -112
- package/src/components/CanvasViewToggle.vue +10 -7
- package/src/components/ChatInput.vue +60 -26
- package/src/components/FileContentHeader.vue +7 -4
- package/src/components/FileContentRenderer.vue +20 -6
- package/src/components/FileTree.vue +6 -3
- package/src/components/FileTreePane.vue +11 -8
- package/src/components/FilesView.vue +5 -3
- package/src/components/LockStatusPopup.vue +15 -12
- package/src/components/NotificationBell.vue +14 -5
- package/src/components/NotificationToast.vue +4 -1
- package/src/components/PluginLauncher.vue +19 -56
- package/src/components/RightSidebar.vue +13 -10
- package/src/components/SessionHistoryPanel.vue +33 -29
- package/src/components/SessionTabBar.vue +8 -10
- package/src/components/SettingsMcpTab.vue +43 -30
- package/src/components/SettingsModal.vue +21 -19
- package/src/components/SettingsReferenceDirsTab.vue +29 -24
- package/src/components/SettingsWorkspaceDirsTab.vue +32 -22
- package/src/components/SidebarHeader.vue +25 -4
- package/src/components/StackView.vue +4 -1
- package/src/components/SuggestionsPanel.vue +5 -2
- package/src/components/TodoExplorer.vue +26 -15
- package/src/components/ToolResultsPanel.vue +27 -13
- package/src/components/todo/TodoAddDialog.vue +17 -12
- package/src/components/todo/TodoEditDialog.vue +7 -2
- package/src/components/todo/TodoEditPanel.vue +15 -10
- package/src/components/todo/TodoKanbanView.vue +10 -5
- package/src/components/todo/TodoListView.vue +5 -2
- package/src/components/todo/TodoTableView.vue +5 -2
- package/src/composables/useAppApi.ts +9 -0
- package/src/composables/useDynamicFavicon.ts +172 -37
- package/src/composables/useEventListeners.ts +7 -8
- package/src/composables/useFaviconState.ts +13 -2
- package/src/composables/useFileSelection.ts +24 -6
- package/src/composables/useLayoutMode.ts +32 -0
- package/src/composables/useSessionHistory.ts +7 -17
- package/src/composables/useViewLayout.ts +20 -34
- package/src/lang/de.ts +536 -0
- package/src/lang/en.ts +558 -0
- package/src/lang/es.ts +543 -0
- package/src/lang/fr.ts +536 -0
- package/src/lang/ja.ts +536 -0
- package/src/lang/ko.ts +540 -0
- package/src/lang/pt-BR.ts +534 -0
- package/src/lang/zh.ts +537 -0
- package/src/lib/vue-i18n.ts +97 -0
- package/src/main.ts +2 -0
- package/src/plugins/canvas/View.vue +102 -186
- package/src/plugins/canvas/definition.ts +0 -8
- package/src/plugins/chart/Preview.vue +1 -1
- package/src/plugins/chart/View.vue +9 -4
- package/src/plugins/manageRoles/Preview.vue +4 -1
- package/src/plugins/manageRoles/View.vue +59 -43
- package/src/plugins/manageSkills/Preview.vue +8 -3
- package/src/plugins/manageSkills/View.vue +26 -22
- package/src/plugins/manageSource/Preview.vue +1 -1
- package/src/plugins/manageSource/View.vue +73 -52
- package/src/plugins/markdown/Preview.vue +1 -1
- package/src/plugins/markdown/View.vue +24 -34
- package/src/plugins/presentHtml/Preview.vue +1 -1
- package/src/plugins/presentHtml/View.vue +7 -4
- package/src/plugins/presentMulmoScript/Preview.vue +1 -1
- package/src/plugins/presentMulmoScript/View.vue +36 -26
- package/src/plugins/scheduler/Preview.vue +7 -4
- package/src/plugins/scheduler/TasksTab.vue +53 -24
- package/src/plugins/scheduler/View.vue +28 -19
- package/src/plugins/scheduler/formatSchedule.ts +93 -0
- package/src/plugins/spreadsheet/Preview.vue +8 -3
- package/src/plugins/spreadsheet/View.vue +21 -12
- package/src/plugins/textResponse/Preview.vue +15 -58
- package/src/plugins/textResponse/View.vue +27 -7
- package/src/plugins/todo/Preview.vue +11 -6
- package/src/plugins/todo/View.vue +27 -13
- package/src/plugins/ui-image/ImagePreview.vue +6 -3
- package/src/plugins/ui-image/ImageView.vue +7 -4
- package/src/plugins/wiki/Preview.vue +5 -2
- package/src/plugins/wiki/View.vue +202 -81
- package/src/plugins/wiki/route.ts +112 -0
- package/src/router/guards.ts +42 -24
- package/src/router/index.ts +41 -26
- package/src/types/vue-i18n.d.ts +20 -0
- package/src/utils/agent/request.ts +19 -0
- package/src/utils/canvas/layoutMode.ts +26 -0
- package/src/utils/image/cacheBust.ts +16 -0
- package/src/utils/image/resolve.ts +16 -0
- package/src/utils/path/workspaceLinkRouter.ts +81 -0
- package/src/vite-env.d.ts +9 -0
- package/client/assets/chunk-vKJrgz-R-C_I3GbVV.js +0 -1
- package/client/assets/html2canvas-Cx501zZr-BF5dYYkY.js +0 -5
- package/client/assets/index-Bm70FDU2.css +0 -1
- package/client/assets/typeof-DBp4T-Ny-BC0P-2DM.js +0 -1
- package/src/composables/useCanvasViewMode.ts +0 -121
- package/src/utils/canvas/viewMode.ts +0 -46
- /package/client/assets/{purify.es-Fx1Nqyry-PeS5RUhs.js → purify.es-Fx1Nqyry-BwJECkqS.js} +0 -0
package/src/lang/ja.ts
ADDED
|
@@ -0,0 +1,536 @@
|
|
|
1
|
+
// Japanese dictionary. Mirror the shape of src/lang/en.ts —
|
|
2
|
+
// missing keys fall back to English per createI18n's fallbackLocale.
|
|
3
|
+
//
|
|
4
|
+
// ⚠️ `<name>` のような山括弧を含む文字列は vue-i18n の XSS
|
|
5
|
+
// ヒューリスティックに引っかかり「Detected HTML in '…' message」
|
|
6
|
+
// 警告が出るため、**関数形式** で書くこと。詳細は en.ts の
|
|
7
|
+
// ヘッダーコメントを参照。
|
|
8
|
+
|
|
9
|
+
const jaMessages = {
|
|
10
|
+
common: {
|
|
11
|
+
save: "保存",
|
|
12
|
+
cancel: "キャンセル",
|
|
13
|
+
loading: "読み込み中...",
|
|
14
|
+
close: "閉じる",
|
|
15
|
+
dismiss: "閉じる",
|
|
16
|
+
add: "追加",
|
|
17
|
+
remove: "削除",
|
|
18
|
+
saving: "保存中...",
|
|
19
|
+
saved: "保存しました",
|
|
20
|
+
noResultsYet: "まだ結果はありません",
|
|
21
|
+
noImageYet: "画像はまだありません",
|
|
22
|
+
},
|
|
23
|
+
sessionTabBar: {
|
|
24
|
+
newSession: "新しいセッション",
|
|
25
|
+
sessionHistory: "セッション履歴",
|
|
26
|
+
// 日本語は単複同形のため左右同じ文字列だが、vue-i18n の
|
|
27
|
+
// pluralization API に合わせて `|` 区切りで揃える。
|
|
28
|
+
activeSessions: "{count} 件のアクティブセッション(エージェント実行中)",
|
|
29
|
+
unreadReplies: "{count} 件の未読返信",
|
|
30
|
+
},
|
|
31
|
+
chatInput: {
|
|
32
|
+
placeholder: "タスクを入力、またはファイルをドロップ・ペースト・添付…",
|
|
33
|
+
expandEditor: "エディタを広げる",
|
|
34
|
+
composeMessage: "メッセージを作成",
|
|
35
|
+
sendHint: "Cmd+Enter で送信",
|
|
36
|
+
send: "送信",
|
|
37
|
+
attachFile: "ファイルを添付",
|
|
38
|
+
fileTooLarge: "ファイルが大きすぎます({sizeMB} MB)。上限は 30 MB です。",
|
|
39
|
+
unsupportedFileType: "対応していないファイル形式です。画像・PDF・DOCX・XLSX・PPTX・テキストファイルを使用してください。",
|
|
40
|
+
},
|
|
41
|
+
sessionHistoryPanel: {
|
|
42
|
+
filters: {
|
|
43
|
+
all: "すべて",
|
|
44
|
+
unread: "未読",
|
|
45
|
+
human: "手動",
|
|
46
|
+
scheduler: "スケジューラ",
|
|
47
|
+
skill: "スキル",
|
|
48
|
+
bridge: "ブリッジ",
|
|
49
|
+
},
|
|
50
|
+
failedToRefresh: "⚠ 更新に失敗: {error}",
|
|
51
|
+
showingLastKnown: " — 前回取得の一覧を表示しています。",
|
|
52
|
+
noSessions: "セッションはまだありません。",
|
|
53
|
+
noMatching: "該当するセッションはありません。",
|
|
54
|
+
running: "実行中",
|
|
55
|
+
unread: "未読",
|
|
56
|
+
noMessages: "(メッセージなし)",
|
|
57
|
+
},
|
|
58
|
+
notificationBell: {
|
|
59
|
+
notifications: "通知",
|
|
60
|
+
markAllRead: "すべて既読にする",
|
|
61
|
+
noNotifications: "通知はありません",
|
|
62
|
+
dismiss: "閉じる",
|
|
63
|
+
},
|
|
64
|
+
sidebarHeader: {
|
|
65
|
+
home: "最新のチャットに移動",
|
|
66
|
+
toolCallHistory: "ツール呼び出し履歴",
|
|
67
|
+
settings: "設定",
|
|
68
|
+
},
|
|
69
|
+
rightSidebar: {
|
|
70
|
+
toggleSystemPrompt: "システムプロンプトの表示切替",
|
|
71
|
+
systemPrompt: "システムプロンプト",
|
|
72
|
+
availableTools: "利用可能ツール",
|
|
73
|
+
toggleToolDescription: "ツール説明の表示切替",
|
|
74
|
+
toolCallHistory: "ツール呼び出し履歴",
|
|
75
|
+
noToolCalls: "ツール呼び出しはまだありません",
|
|
76
|
+
arguments: "引数",
|
|
77
|
+
error: "エラー",
|
|
78
|
+
result: "結果",
|
|
79
|
+
running: "実行中...",
|
|
80
|
+
},
|
|
81
|
+
fileTreePane: {
|
|
82
|
+
sort: "並び順:",
|
|
83
|
+
sortByName: "名前順",
|
|
84
|
+
name: "名前",
|
|
85
|
+
sortByRecent: "更新日順(新しい順)",
|
|
86
|
+
recent: "最近",
|
|
87
|
+
reference: "参照",
|
|
88
|
+
readOnlyBadge: "RO",
|
|
89
|
+
},
|
|
90
|
+
fileTree: {
|
|
91
|
+
workspace: "(ワークスペース)",
|
|
92
|
+
recentlyChanged: "最近変更されました",
|
|
93
|
+
},
|
|
94
|
+
lockStatusPopup: {
|
|
95
|
+
sandboxEnabledTooltip: "サンドボックス有効 (Docker)",
|
|
96
|
+
noSandboxTooltip: "サンドボックスなし (Docker 未検出)",
|
|
97
|
+
sandboxEnabledLabel: "サンドボックス有効:",
|
|
98
|
+
sandboxEnabledBody: "Docker が動作中です。ファイルシステムアクセスは隔離されています。",
|
|
99
|
+
noSandboxLabel: "サンドボックスなし:",
|
|
100
|
+
noSandboxBodyPrefix: "Claude はこのマシンの全ファイルにアクセスできます。",
|
|
101
|
+
noSandboxBodySuffix: "をインストールしてファイルシステムを隔離してください。",
|
|
102
|
+
dockerDesktop: "Docker Desktop",
|
|
103
|
+
hostCredentials: "ホスト認証情報の接続状況:",
|
|
104
|
+
credsLoading: "読み込み中…",
|
|
105
|
+
sshAgent: "SSH エージェント:",
|
|
106
|
+
forwarded: "転送中",
|
|
107
|
+
notForwarded: "転送なし",
|
|
108
|
+
mountedConfigs: "マウント設定:",
|
|
109
|
+
none: "なし",
|
|
110
|
+
testIsolation: "サンドボックス隔離をテスト:",
|
|
111
|
+
},
|
|
112
|
+
settingsModal: {
|
|
113
|
+
title: "設定",
|
|
114
|
+
tabs: {
|
|
115
|
+
tools: "許可ツール",
|
|
116
|
+
mcp: "MCP サーバ",
|
|
117
|
+
dirs: "ディレクトリ",
|
|
118
|
+
refs: "参照ディレクトリ",
|
|
119
|
+
},
|
|
120
|
+
toolNamesLabel: "ツール名",
|
|
121
|
+
invalidToolNamesPrefix: "次の項目は標準的ではないようです(期待される接頭辞",
|
|
122
|
+
invalidToolNamesSuffix: "):",
|
|
123
|
+
mcpToolsError: "⚠ MCP ツール状態の取得に失敗しました: {error}。有効/無効にかかわらず全ツールを表示しています。",
|
|
124
|
+
changesHint: "次回のメッセージから反映されます。再起動は不要です。",
|
|
125
|
+
cannotSaveTooltip: "設定の読み込みに成功するまで保存できません",
|
|
126
|
+
saving: "保存中…",
|
|
127
|
+
loadingLabel: "読み込み中…",
|
|
128
|
+
},
|
|
129
|
+
canvasViewToggle: {
|
|
130
|
+
stackViewTooltip: "スタック表示・クリックで Single に切替 (⌘1)",
|
|
131
|
+
singleViewTooltip: "Single 表示・クリックで Stack に切替 (⌘2)",
|
|
132
|
+
switchToSingle: "Single 表示に切替",
|
|
133
|
+
switchToStack: "Stack 表示に切替",
|
|
134
|
+
},
|
|
135
|
+
settingsWorkspaceDirs: {
|
|
136
|
+
explanation: "{dataDir} および {artifactsDir} 配下でファイルを整理するためのカスタムディレクトリ。Claude がファイル保存先を振り分けるために使用します。",
|
|
137
|
+
noEntries: "カスタムディレクトリは未設定です。",
|
|
138
|
+
addDirTitle: "ディレクトリを追加",
|
|
139
|
+
pathPlaceholder: "data/clients または artifacts/reports",
|
|
140
|
+
descPlaceholder: "説明(このフォルダに入れるもの)",
|
|
141
|
+
errPathRequired: "パスを入力してください",
|
|
142
|
+
errMustStartWith: "data/ または artifacts/ で始める必要があります",
|
|
143
|
+
errAlreadyExists: "既に登録されています",
|
|
144
|
+
},
|
|
145
|
+
settingsReferenceDirs: {
|
|
146
|
+
explanation:
|
|
147
|
+
"Claude が読み取れるが変更できない外部ディレクトリ。Docker モードでは読み取り専用でマウントされます。Obsidian vault、プロジェクトコード、ドキュメントフォルダなどの参照に便利です。",
|
|
148
|
+
noEntries: "参照ディレクトリは未設定です。",
|
|
149
|
+
addDirTitle: "参照ディレクトリを追加",
|
|
150
|
+
pathPlaceholder: "/Users/me/ObsidianVault または ~/Documents/notes",
|
|
151
|
+
labelPlaceholder: "ラベル(省略時はフォルダ名)",
|
|
152
|
+
readOnlyBadge: "読み取り専用",
|
|
153
|
+
errPathRequired: "パスを入力してください",
|
|
154
|
+
errMustBeAbsolute: "絶対パスまたは ~/ で始まる必要があります",
|
|
155
|
+
errAlreadyExists: "既に登録されています",
|
|
156
|
+
errLabelConflict: "ラベル「{label}」は既に使用されています",
|
|
157
|
+
},
|
|
158
|
+
pluginLauncher: {
|
|
159
|
+
todos: { label: "Todo", title: "Todo を開く (⌘4)" },
|
|
160
|
+
scheduler: { label: "スケジュール", title: "スケジュールを開く (⌘5)" },
|
|
161
|
+
wiki: { label: "Wiki", title: "Wiki を開く (⌘6)" },
|
|
162
|
+
skills: { label: "スキル", title: "スキルを開く (⌘7)" },
|
|
163
|
+
roles: { label: "ロール", title: "ロールを開く (⌘8)" },
|
|
164
|
+
files: { label: "ファイル", title: "ワークスペースファイルを開く (⌘3)" },
|
|
165
|
+
},
|
|
166
|
+
fileContentHeader: {
|
|
167
|
+
showRendered: "レンダリング表示",
|
|
168
|
+
showRaw: "ソース表示",
|
|
169
|
+
rendered: "レンダリング",
|
|
170
|
+
raw: "ソース",
|
|
171
|
+
closeFile: "ファイルを閉じる",
|
|
172
|
+
},
|
|
173
|
+
fileContentRenderer: {
|
|
174
|
+
selectFile: "ファイルを選択してください",
|
|
175
|
+
htmlPreview: "HTML プレビュー",
|
|
176
|
+
pdfPreview: "PDF プレビュー",
|
|
177
|
+
parseError: "パースエラー",
|
|
178
|
+
},
|
|
179
|
+
settingsMcpTab: {
|
|
180
|
+
explanation:
|
|
181
|
+
"外部 MCP サーバを追加します。HTTP サーバはすべてのモードで動作します。Stdio サーバはサンドボックスイメージの {npx} / {node} / {tsx} を使用します。Docker 有効時はパスはワークスペース内である必要があります。",
|
|
182
|
+
localhostRewrite: "Docker モードでは {localhost} は {hostDockerInternal} に書き換えられます。",
|
|
183
|
+
noServers: "MCP サーバは未設定です。",
|
|
184
|
+
enabled: "有効",
|
|
185
|
+
urlLabel: "URL:",
|
|
186
|
+
commandLabel: "コマンド:",
|
|
187
|
+
dockerNonWorkspaceWarning: "⚠ ワークスペース外のパスが含まれています — Docker 内では解決されません。",
|
|
188
|
+
addServerButton: "+ MCP サーバを追加",
|
|
189
|
+
nameLabel: "名前",
|
|
190
|
+
namePlaceholder: "my-server",
|
|
191
|
+
typeHttp: "HTTP",
|
|
192
|
+
typeStdio: "Stdio (コマンド)",
|
|
193
|
+
urlFieldLabel: "URL",
|
|
194
|
+
urlPlaceholder: "https://example.com/mcp",
|
|
195
|
+
commandFieldLabel: "コマンド",
|
|
196
|
+
argsLabel: "引数(1行につき1つ)",
|
|
197
|
+
// Message function form — skips vue-i18n's message compiler so
|
|
198
|
+
// the literal `@` isn't parsed as a linked-message reference.
|
|
199
|
+
argsPlaceholder: () => "-y\n@modelcontextprotocol/server-filesystem\n/workspace/path",
|
|
200
|
+
errNoName: "名前を入力するか、URL / 引数から推論できる値を入力してください。",
|
|
201
|
+
errBadName: "名前は小文字で始まり、[a-z0-9_-] のみ使用できます。",
|
|
202
|
+
errIdExists: "サーバ ID「{id}」は既に存在します。",
|
|
203
|
+
errBadHttpUrl: "HTTP URL は http:// または https:// で始める必要があります",
|
|
204
|
+
},
|
|
205
|
+
pluginScheduler: {
|
|
206
|
+
prev: "前へ",
|
|
207
|
+
today: "今日",
|
|
208
|
+
goToday: "今日へ移動",
|
|
209
|
+
next: "次へ",
|
|
210
|
+
deleteItem: "項目を削除",
|
|
211
|
+
closeEditor: "エディタを閉じる",
|
|
212
|
+
apiError: "⚠ スケジューラの更新に失敗: {error}",
|
|
213
|
+
tabCalendar: "カレンダー",
|
|
214
|
+
tabTasks: "タスク",
|
|
215
|
+
heading: "スケジューラ",
|
|
216
|
+
// 日本語は単複同形。vue-i18n の pluralization は片方形式でも許容。
|
|
217
|
+
itemCount: "{count} 件",
|
|
218
|
+
noScheduled: "予定されている項目はありません",
|
|
219
|
+
unscheduled: "未スケジュール",
|
|
220
|
+
editItem: "項目を編集",
|
|
221
|
+
update: "更新",
|
|
222
|
+
editSource: "ソースを編集",
|
|
223
|
+
applyChanges: "変更を適用",
|
|
224
|
+
propLabel: "{key}:",
|
|
225
|
+
moreCount: "他 {count} 件",
|
|
226
|
+
previewIcon: "📅",
|
|
227
|
+
previewUpcoming: "今後 {count} 件",
|
|
228
|
+
previewMore: "+ {count} 件…",
|
|
229
|
+
},
|
|
230
|
+
pluginSchedulerTasks: {
|
|
231
|
+
recommendedFrequencies: "推奨頻度",
|
|
232
|
+
tableTaskType: "タスク種別",
|
|
233
|
+
tableSuggestedSchedule: "推奨スケジュール",
|
|
234
|
+
noTasks: "スケジュール済みタスクはありません",
|
|
235
|
+
runNow: "今すぐ実行",
|
|
236
|
+
enable: "有効化",
|
|
237
|
+
disable: "無効化",
|
|
238
|
+
delete: "削除",
|
|
239
|
+
nextRun: "次回: {time}",
|
|
240
|
+
originSystem: "システム",
|
|
241
|
+
originUser: "ユーザー",
|
|
242
|
+
originSkill: "スキル",
|
|
243
|
+
runFailed: "実行失敗: {error}",
|
|
244
|
+
toggleFailed: "切替失敗: {error}",
|
|
245
|
+
deleteFailed: "削除失敗: {error}",
|
|
246
|
+
},
|
|
247
|
+
pluginCanvas: {
|
|
248
|
+
undo: "元に戻す",
|
|
249
|
+
redo: "やり直し",
|
|
250
|
+
clear: "クリア",
|
|
251
|
+
styleLabel: "スタイル:",
|
|
252
|
+
},
|
|
253
|
+
pluginChart: {
|
|
254
|
+
untitled: "チャート",
|
|
255
|
+
chartCount: "{count} チャート",
|
|
256
|
+
chartTitle: "チャート {num}",
|
|
257
|
+
png: "PNG",
|
|
258
|
+
},
|
|
259
|
+
pluginTodo: {
|
|
260
|
+
clearFilters: "すべてのフィルタをクリア",
|
|
261
|
+
deleteItem: "項目を削除",
|
|
262
|
+
apiError: "⚠ Todo の更新に失敗: {error}",
|
|
263
|
+
heading: "Todo リスト",
|
|
264
|
+
completedRatio: "{done}/{total} 完了",
|
|
265
|
+
filter: "フィルタ:",
|
|
266
|
+
noItems: "Todo 項目はまだありません",
|
|
267
|
+
noMatchingFilter: "該当する項目はありません",
|
|
268
|
+
update: "更新",
|
|
269
|
+
clearCompleted: "完了済みを削除",
|
|
270
|
+
clearButton: "クリア ✕",
|
|
271
|
+
deleteSymbol: "✕",
|
|
272
|
+
},
|
|
273
|
+
todoExplorer: {
|
|
274
|
+
heading: "Todo",
|
|
275
|
+
doneRatio: "{done}/{total} 完了",
|
|
276
|
+
addButton: "+ 追加",
|
|
277
|
+
addColumnButton: "+ 列",
|
|
278
|
+
labels: "ラベル:",
|
|
279
|
+
searchPlaceholder: "検索...",
|
|
280
|
+
clearButton: "クリア ✕",
|
|
281
|
+
clearFiltersTitle: "ラベルフィルタをクリア",
|
|
282
|
+
emptyHint: "Todo 項目はまだありません。「+ 追加」で作成してください。",
|
|
283
|
+
addColumn: "列を追加",
|
|
284
|
+
newColumnLabelField: "ラベル",
|
|
285
|
+
newColumnPlaceholder: "レビュー",
|
|
286
|
+
noMatchingFilter: "現在のフィルタに一致する項目はありません",
|
|
287
|
+
},
|
|
288
|
+
todoPreview: {
|
|
289
|
+
completedRatio: "{done}/{total} 完了",
|
|
290
|
+
moreItems: "+ {count} 件…",
|
|
291
|
+
headerIcon: "☑",
|
|
292
|
+
doneIcon: "✓",
|
|
293
|
+
pendingIcon: "○",
|
|
294
|
+
moreLabels: "+{count}",
|
|
295
|
+
},
|
|
296
|
+
todoDialogs: {
|
|
297
|
+
addTitle: "Todo を追加",
|
|
298
|
+
editTitle: "Todo を編集",
|
|
299
|
+
deleteButton: "削除",
|
|
300
|
+
deleteTitle: "この項目を削除",
|
|
301
|
+
noneOption: "— なし —",
|
|
302
|
+
fieldText: "内容",
|
|
303
|
+
fieldNote: "メモ",
|
|
304
|
+
fieldStatus: "ステータス",
|
|
305
|
+
fieldPriority: "優先度",
|
|
306
|
+
fieldDueDate: "期日",
|
|
307
|
+
fieldLabels: "ラベル",
|
|
308
|
+
fieldLabelsCommaSeparated: "ラベル(カンマ区切り)",
|
|
309
|
+
textPlaceholder: "やることを入力",
|
|
310
|
+
labelsPlaceholder: "work, urgent",
|
|
311
|
+
},
|
|
312
|
+
todoKanban: {
|
|
313
|
+
rename: "名前を変更",
|
|
314
|
+
alreadyDoneColumn: "完了列",
|
|
315
|
+
markAsDoneColumn: "完了列に指定",
|
|
316
|
+
deleteColumn: "列を削除",
|
|
317
|
+
columnActions: "列のアクション",
|
|
318
|
+
addCard: "+ カードを追加",
|
|
319
|
+
},
|
|
320
|
+
todoTableList: {
|
|
321
|
+
noMatchingFilter: "現在のフィルタに一致する項目はありません",
|
|
322
|
+
},
|
|
323
|
+
pluginWiki: {
|
|
324
|
+
backToIndex: "インデックスに戻る",
|
|
325
|
+
pdf: "PDF",
|
|
326
|
+
pdfFailed: "⚠ PDF 失敗",
|
|
327
|
+
tabIndex: "インデックス",
|
|
328
|
+
tabLog: "ログ",
|
|
329
|
+
tabLint: "Lint",
|
|
330
|
+
empty: "Wiki は空です。Wiki Manager にソースの取り込みを依頼してください。",
|
|
331
|
+
previewMore: "+ {count} 件…",
|
|
332
|
+
chatPlaceholder: "このページについて質問…",
|
|
333
|
+
chatSend: "このページについて新しいチャットを開始",
|
|
334
|
+
},
|
|
335
|
+
pluginPresentHtml: {
|
|
336
|
+
saveAsPdf: "PDF として保存(印刷ダイアログを開きます)",
|
|
337
|
+
pdf: "PDF",
|
|
338
|
+
untitled: "HTML ページ",
|
|
339
|
+
hideSource: "ソースを隠す <>",
|
|
340
|
+
showSource: "ソースを表示 <>",
|
|
341
|
+
},
|
|
342
|
+
pluginManageSource: {
|
|
343
|
+
titlePlaceholder: "タイトル(省略可)",
|
|
344
|
+
heading: "情報ソース",
|
|
345
|
+
sourceCount: "{count} 件",
|
|
346
|
+
addButton: "追加",
|
|
347
|
+
rebuildNow: "今すぐ再構築",
|
|
348
|
+
rebuilding: "再構築中…",
|
|
349
|
+
typeField: "種別",
|
|
350
|
+
addingLabel: "追加中…",
|
|
351
|
+
addAndRebuild: "追加 + 再構築",
|
|
352
|
+
emptyPickPack: "ソースが登録されていません。下のスターターパックから選ぶ、上の {addBold} をクリックする、または Claude に登録を依頼してください。",
|
|
353
|
+
emptyAddStrong: "+ 追加",
|
|
354
|
+
registering: "登録中・取得中…",
|
|
355
|
+
removeLabel: "削除",
|
|
356
|
+
removingLabel: "削除中…",
|
|
357
|
+
todaysBrief: "本日のブリーフ",
|
|
358
|
+
todaysBriefLoading: "本日のブリーフを読み込み中…",
|
|
359
|
+
briefNone: "この日付のブリーフはまだ作成されていません。「今すぐ再構築」をクリックしてください。",
|
|
360
|
+
briefEmpty: "本日のブリーフは空です。",
|
|
361
|
+
briefLoadFailed: "ブリーフの読み込みに失敗しました",
|
|
362
|
+
lastRebuildSummary: "前回の再構築 ({date}): {planned} ソースから {itemCount} 件を取得、{duplicates} 件の重複を除外。",
|
|
363
|
+
archiveErrorsSuffix: "(アーカイブエラー {count} 件)",
|
|
364
|
+
kindRss: "RSS",
|
|
365
|
+
kindGithubRel: "GitHub リリース",
|
|
366
|
+
kindGithubIss: "GitHub Issue",
|
|
367
|
+
kindArxiv: "arXiv",
|
|
368
|
+
kindGithubReleases: "GitHub リリース",
|
|
369
|
+
kindGithubIssues: "GitHub Issue",
|
|
370
|
+
briefDateLabel: "({date})",
|
|
371
|
+
primaryRssPlaceholder: "https://news.ycombinator.com/rss",
|
|
372
|
+
primaryGithubPlaceholder: "https://github.com/owner/repo(または owner/repo)",
|
|
373
|
+
primaryArxivPlaceholder: "cat:cs.CL",
|
|
374
|
+
primaryRssHint: "フィード URL (RSS 2.0 / Atom / RDF)",
|
|
375
|
+
primaryGithubRelHint: "GitHub リポジトリ URL または owner/repo — リリースを取得",
|
|
376
|
+
primaryGithubIssHint: "GitHub リポジトリ URL または owner/repo — Issue を取得",
|
|
377
|
+
primaryArxivHint: "arXiv 検索クエリ(例: cat:cs.CL または au:hinton)",
|
|
378
|
+
confirmRemove: "ソース「{slug}」を削除しますか?",
|
|
379
|
+
flashRegistered: "登録しました。新しい項目を取得中…",
|
|
380
|
+
flashRebuildReady: "完了: {planned} ソースから {itemCount} 件を取得。",
|
|
381
|
+
flashRebuildComplete: "再構築完了: {planned} ソースから {itemCount} 件を取得。",
|
|
382
|
+
flashRebuildFailed: "再構築失敗: {error}",
|
|
383
|
+
flashRegisterFailed: "ソースの登録に失敗しました",
|
|
384
|
+
flashRegisterSucceededRebuildFailed: "登録成功、再構築失敗: {error}",
|
|
385
|
+
flashRemoved: "「{slug}」を削除しました。",
|
|
386
|
+
flashRemoveFailed: "削除失敗: {error}",
|
|
387
|
+
flashRefreshListFailed: "ソース一覧の取得に失敗: {error}",
|
|
388
|
+
flashPresetAlreadyRegistered: "「{label}」のソースはすべて登録済みです。",
|
|
389
|
+
flashPresetRegistered: "「{label}」から {count} 件のソースを登録しました。取得中…",
|
|
390
|
+
flashPresetPartial: "登録 {ok}/{total} 件。エラー: {errors}",
|
|
391
|
+
},
|
|
392
|
+
pluginManageSkills: {
|
|
393
|
+
deleteProjectSkill: "このプロジェクト限定スキルを削除",
|
|
394
|
+
heading: "スキル",
|
|
395
|
+
previewCount: "{count} スキル",
|
|
396
|
+
previewMore: "他 {count} 件",
|
|
397
|
+
// 関数形式で vue-i18n のメッセージコンパイラをバイパスする。
|
|
398
|
+
// 通常形式だと `<name>` が HTML フラグメント扱いされ、毎回
|
|
399
|
+
// 「Detected HTML in '…' message」警告が出る。
|
|
400
|
+
subheading: ({ named }: { named: (key: string) => unknown }) => `${named("count")} 件利用可能 · クリックで表示 · 「Run」で /<name> として呼び出し`,
|
|
401
|
+
emptyWithPath: "スキルが見つかりません。{path} にスキルフォルダを追加してください。",
|
|
402
|
+
emptySkillPath: "~/.claude/skills/",
|
|
403
|
+
selectHint: "左側のスキルを選択して SKILL.md を表示します。",
|
|
404
|
+
loading: "読み込み中…",
|
|
405
|
+
fieldDescription: "説明",
|
|
406
|
+
fieldBody: "本文 (Markdown)",
|
|
407
|
+
emptyBody: "(本文なし)",
|
|
408
|
+
btnEdit: "編集",
|
|
409
|
+
btnDelete: "削除",
|
|
410
|
+
btnRun: "実行",
|
|
411
|
+
errListFailed: "スキル一覧の読み込みに失敗: {error}",
|
|
412
|
+
errDetailFailed: "スキルの読み込みに失敗: {error}",
|
|
413
|
+
errSaveFailed: "保存失敗: {error}",
|
|
414
|
+
errDeleteFailed: "削除に失敗しました",
|
|
415
|
+
confirmDelete: "スキル「{name}」を削除しますか? ~/mulmoclaude/.claude/skills/{name}/SKILL.md が削除されます。",
|
|
416
|
+
},
|
|
417
|
+
pluginManageRoles: {
|
|
418
|
+
heading: "カスタムロール",
|
|
419
|
+
roleCount: "{count} 件",
|
|
420
|
+
previewCount: "カスタムロール {count} 件",
|
|
421
|
+
addButton: "+ 追加",
|
|
422
|
+
createPanel: "新しいロールを作成",
|
|
423
|
+
fieldId: "ID",
|
|
424
|
+
fieldName: "名前",
|
|
425
|
+
fieldIcon: "アイコン",
|
|
426
|
+
fieldPrompt: "プロンプト",
|
|
427
|
+
fieldPlugins: "プラグイン",
|
|
428
|
+
fieldStarterQueries: "スターター質問",
|
|
429
|
+
onePerLine: "(1行につき1つ)",
|
|
430
|
+
helpLink: "?",
|
|
431
|
+
idFormatted: "({id})",
|
|
432
|
+
missingEnv: "({env} 未設定)",
|
|
433
|
+
requiresEnv: ".env に {env} が必要",
|
|
434
|
+
collapse: "折りたたむ",
|
|
435
|
+
expand: "展開",
|
|
436
|
+
idPlaceholder: "unique-id",
|
|
437
|
+
creating: "作成中…",
|
|
438
|
+
create: "作成",
|
|
439
|
+
updating: "更新中…",
|
|
440
|
+
update: "更新",
|
|
441
|
+
cancel: "キャンセル",
|
|
442
|
+
delete: "削除",
|
|
443
|
+
emptyHint: "カスタムロールはまだありません。「+ 追加」をクリックするか、Claude に作成を依頼してください。",
|
|
444
|
+
errIdRequired: "ID を入力してください。",
|
|
445
|
+
errIdInvalid: "ID は英数字と '-' '_' のみ使用できます。",
|
|
446
|
+
errNameRequired: "名前を入力してください。",
|
|
447
|
+
errIdDuplicate: "ID '{id}' のロールは既に存在します。",
|
|
448
|
+
errCreateFailed: "作成失敗",
|
|
449
|
+
errSaveFailed: "保存失敗",
|
|
450
|
+
errDeleteFailed: "削除失敗",
|
|
451
|
+
errNetworkError: "ネットワークエラー",
|
|
452
|
+
errServerError: "サーバエラー: {status}",
|
|
453
|
+
},
|
|
454
|
+
pluginUiImage: {
|
|
455
|
+
promptLabel: "{label}:",
|
|
456
|
+
},
|
|
457
|
+
pluginMulmoScript: {
|
|
458
|
+
beatCount: "{count} ビート",
|
|
459
|
+
movie: "動画",
|
|
460
|
+
generating: "生成中…",
|
|
461
|
+
rendering: "レンダリング中…",
|
|
462
|
+
saving: "保存中…",
|
|
463
|
+
update: "更新",
|
|
464
|
+
characters: "キャラクター",
|
|
465
|
+
drop: "ドロップ",
|
|
466
|
+
gen: "生成",
|
|
467
|
+
play: "▶ 再生",
|
|
468
|
+
stop: "■ 停止",
|
|
469
|
+
errPrefix: "⚠ エラー",
|
|
470
|
+
noBeats: "スクリプトにビートが見つかりません",
|
|
471
|
+
editSource: "スクリプトソースを編集",
|
|
472
|
+
applyChanges: "変更を適用",
|
|
473
|
+
generateAll: "すべて生成",
|
|
474
|
+
orDropImage: "画像をドロップ",
|
|
475
|
+
generate: "生成",
|
|
476
|
+
generateAudio: "♪ 生成",
|
|
477
|
+
saveErrorInvalidJson: "⚠ 不正な JSON: {error}",
|
|
478
|
+
saveErrorSaveFailed: "⚠ 保存失敗: {error}",
|
|
479
|
+
},
|
|
480
|
+
pluginMarkdown: {
|
|
481
|
+
loading: "ドキュメント読み込み中...",
|
|
482
|
+
loadFailed: "⚠ ドキュメントの読み込みに失敗: {error}",
|
|
483
|
+
refreshFailed: "⚠ ドキュメントの更新に失敗: {error} — 前回読み込んだ内容を表示しています。",
|
|
484
|
+
noContent: "Markdown コンテンツがありません",
|
|
485
|
+
pdf: "PDF",
|
|
486
|
+
pdfFailedShort: "⚠ PDF 失敗",
|
|
487
|
+
editSource: "Markdown ソースを編集",
|
|
488
|
+
saving: "保存中...",
|
|
489
|
+
applyChanges: "変更を適用",
|
|
490
|
+
cancel: "キャンセル",
|
|
491
|
+
saveFailed: "保存失敗: {error}",
|
|
492
|
+
saveError: "⚠ 保存失敗: {error}",
|
|
493
|
+
copyLabel: "コピー",
|
|
494
|
+
copiedLabel: "コピーしました!",
|
|
495
|
+
},
|
|
496
|
+
pluginTextResponse: {
|
|
497
|
+
pdf: "PDF",
|
|
498
|
+
pdfFailed: "⚠ PDF 失敗",
|
|
499
|
+
editContent: "テキストを編集",
|
|
500
|
+
applyChanges: "変更を適用",
|
|
501
|
+
copyLabel: "コピー",
|
|
502
|
+
copiedLabel: "コピーしました!",
|
|
503
|
+
cancel: "キャンセル",
|
|
504
|
+
},
|
|
505
|
+
pluginSpreadsheet: {
|
|
506
|
+
previewLabel: "📊 スプレッドシート",
|
|
507
|
+
previewUntitled: "スプレッドシート",
|
|
508
|
+
previewSheets: "{count} シート",
|
|
509
|
+
untitled: "スプレッドシート",
|
|
510
|
+
excel: "Excel",
|
|
511
|
+
valuePlaceholder: "値",
|
|
512
|
+
valueOrFormulaPlaceholder: "値または数式(例: 100, SUM(B2:B11))",
|
|
513
|
+
formatPlaceholder: "書式(例: $#,##0.00)",
|
|
514
|
+
loading: "スプレッドシート読み込み中...",
|
|
515
|
+
noData: "スプレッドシートのデータがありません",
|
|
516
|
+
editData: "スプレッドシートデータを編集",
|
|
517
|
+
applyChanges: "変更を適用",
|
|
518
|
+
update: "更新",
|
|
519
|
+
stringType: "文字列",
|
|
520
|
+
formulaType: "数式",
|
|
521
|
+
},
|
|
522
|
+
app: {
|
|
523
|
+
geminiRequired: "画像生成には {envKey} が必要です。{envFile} に追加してアプリを再起動してください。",
|
|
524
|
+
startConversation: "会話を開始してください",
|
|
525
|
+
},
|
|
526
|
+
suggestionsPanel: {
|
|
527
|
+
suggestions: "候補",
|
|
528
|
+
sendEditHint: "クリックで送信 · Shift+クリックで編集",
|
|
529
|
+
},
|
|
530
|
+
settingsToolsTab: {
|
|
531
|
+
explanation:
|
|
532
|
+
"{allowedTools} を介して Claude に渡す追加ツール名。1行につき1つ。Gmail / Google Calendar などの Claude Code 組み込み MCP サーバを、{claudeMcp} で認証した後に利用する場合に便利です。",
|
|
533
|
+
},
|
|
534
|
+
};
|
|
535
|
+
|
|
536
|
+
export default jaMessages;
|