html2pptx-local-mcp 1.1.18 → 1.1.20

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.
@@ -185,8 +185,8 @@ npx skills add https://html2pptx.app --list
185
185
  # More agents / multiple targets: use the interactive selector
186
186
  npx skills add https://html2pptx.app
187
187
 
188
- # Install remote MCP and local MCP for edit-slide
189
- npx -y -p html2pptx-local-mcp@latest html2pptx-install-mcp claude`;
188
+ # Claude Code users: run this one line
189
+ npx --yes --package html2pptx-local-mcp@latest html2pptx-install-mcp claude`;
190
190
 
191
191
  const SKILL_INSTALL_COMMAND_JA = `# 使うエージェントのコマンドを選択
192
192
  # Claude Code
@@ -207,8 +207,8 @@ npx skills add https://html2pptx.app --list
207
207
  # その他のエージェント / 複数指定は対話形式で選択
208
208
  npx skills add https://html2pptx.app
209
209
 
210
- # Remote MCP と edit-slide 用 Local MCP をまとめて追加
211
- npx -y -p html2pptx-local-mcp@latest html2pptx-install-mcp claude`;
210
+ # Claude Codeユーザーはこの1行でOK
211
+ npx --yes --package html2pptx-local-mcp@latest html2pptx-install-mcp claude`;
212
212
 
213
213
  const SKILL_INVOCATION_EXAMPLE = `# 例: Claude Code でスライド作成 → PPTX出力
214
214
 
@@ -239,12 +239,12 @@ const SKILL_AVAILABLE_LIST = [
239
239
  {
240
240
  name: 'edit-slide',
241
241
  description: 'ローカルHTMLスライドをlocalhost上のvisual editorで開き、localhost bridge 経由で同じファイルに保存。',
242
- capabilities: ['html2pptx_open_local_slide_editor', 'PowerPoint風UIで視覚編集', 'ローカルHTMLへの自動保存', '変更検知と競合防止'],
242
+ capabilities: ['html2pptx edit <file>', 'PowerPoint風UIで視覚編集', 'ローカルHTMLへの自動保存', '変更検知と競合防止'],
243
243
  },
244
244
  ];
245
245
 
246
- const MCP_INSTALL_EXAMPLE = `# Remote MCP と edit-slide 用 Local MCP をまとめて追加
247
- npx -y -p html2pptx-local-mcp@latest html2pptx-install-mcp claude`;
246
+ const MCP_INSTALL_EXAMPLE = `# Claude Codeユーザーはこの1行でOK
247
+ npx --yes --package html2pptx-local-mcp@latest html2pptx-install-mcp claude`;
248
248
 
249
249
  const MCP_CONFIG_EXAMPLE = `// 方法2: 設定ファイルに手動追加
250
250
 
@@ -254,13 +254,13 @@ const MCP_CONFIG_EXAMPLE = `// 方法2: 設定ファイルに手動追加
254
254
 
255
255
  {
256
256
  "mcpServers": {
257
- "html2pptx-local": {
258
- "type": "stdio",
259
- "command": "node",
260
- "args": [
261
- "/Users/<you>/.html2pptx/bin/html2pptx-local-mcp-launcher.mjs"
262
- ],
263
- "env": {}
257
+ "html2pptx": {
258
+ "command": "npx",
259
+ "args": ["--yes", "--package", "html2pptx-local-mcp@latest", "html2pptx-mcp"],
260
+ "env": {
261
+ "PPTX_STUDIO_API_KEY": "sk_live_xxxx",
262
+ "PPTX_STUDIO_BASE_URL": "http://127.0.0.1:<app-port>"
263
+ }
264
264
  }
265
265
  }
266
266
  }`;
@@ -495,7 +495,7 @@ export const DOCS_COPY = {
495
495
  {
496
496
  title: 'MCP (Model Context Protocol)',
497
497
  icon: '<svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="2"/><path d="M16.24 7.76a6 6 0 010 8.49m-8.48-.01a6 6 0 010-8.49m11.31-2.82a10 10 0 010 14.14m-14.14 0a10 10 0 010-14.14"/></svg>',
498
- body: 'Expose the backend to AI agents via the MCP protocol. Use the remote HTTP endpoint at /mcp for export, docs, catalog, and template publishing tools; use local stdio MCP or direct CLI for opening local HTML in edit-slide. HTML template drafts must be created through remote MCP after validation.',
498
+ body: 'Expose the backend to AI agents via the MCP protocol. Use the remote HTTP endpoint at /mcp for export, docs, catalog, and template publishing tools; use local stdio MCP only for opening local HTML in edit-slide. HTML template drafts must be created through remote MCP after validation.',
499
499
  },
500
500
  ],
501
501
  overviewCssTitle: 'Supported CSS Features',
@@ -747,8 +747,8 @@ export const DOCS_COPY = {
747
747
  skillsTitle: 'Skills Integration',
748
748
  skillsSubtitle: 'What are Skills',
749
749
  skillsDescription:
750
- 'Skills are packaged capabilities that extend AI coding agents with domain-specific knowledge and workflows. The html2pptx.app skill teaches your agent how to author slide-safe HTML, validate it against the PPTX conversion contract, optionally open the local visual editor, export through the remote MCP workflow, and publish HTML template drafts through its built-in remote MCP publishing workflow. Install once, and your agent can convert natural language instructions into production-ready PowerPoint files or creator-owned HTML drafts.',
751
- skillsHowItWorks: 'The skill bundles four core capabilities: (1) HTML authoring knowledge -- the rules for writing HTML/CSS that converts cleanly to editable PowerPoint, (2) MCP-based export automation -- connecting to the remote html2pptx.app MCP server to create jobs, poll status, and retrieve results, (3) local visual editing -- opening edit-slide through a localhost bridge when the user wants to inspect or tweak the HTML before export, and (4) template publishing -- requiring HTML drafts to go through the remote MCP validate/publish loop. The agent should ask before adding a local MCP server because that changes the user’s MCP configuration.',
750
+ 'Skills are packaged capabilities that extend AI coding agents with domain-specific knowledge and workflows. The html2pptx.app skill teaches your agent how to author slide-safe HTML, validate it against the PPTX conversion contract, optionally open the local visual editor, export through remote or local MCP workflows, and publish HTML template drafts through its built-in remote MCP publishing workflow. Install once, and your agent can convert natural language instructions into production-ready PowerPoint files or creator-owned HTML drafts.',
751
+ skillsHowItWorks: 'The skill bundles four core capabilities: (1) HTML authoring knowledge -- the rules for writing HTML/CSS that converts cleanly to editable PowerPoint, (2) MCP-based export automation -- connecting to the remote html2pptx.app MCP server or a local stdio MCP server to create jobs, poll status, and retrieve results, (3) local visual editing -- opening edit-slide through a localhost bridge when the user wants to inspect or tweak the HTML before export, and (4) template publishing -- requiring HTML drafts to go through the remote MCP validate/publish loop. The agent should ask before adding a local MCP server because that changes the user’s MCP configuration.',
752
752
  skillsCompatibility: 'Works with 18+ AI agents including Claude Code, Cursor, GitHub Copilot, Windsurf, Cline, Codex, and more. Use the skills CLI command for the specific agent you use, or the interactive selector for other supported agents.',
753
753
  skillsWorkflowTitle: 'Workflow',
754
754
  skillsWorkflow: [
@@ -756,24 +756,31 @@ export const DOCS_COPY = {
756
756
  'Agent reads the skill definition to understand the html2pptx.app HTML contract',
757
757
  'Agent generates slide-safe HTML with .slide class elements and explicit dimensions. 1600x900 is the default example',
758
758
  'Agent validates the markup against the conversion contract',
759
- 'If visual review is needed, the agent opens the local edit-slide editor through local stdio MCP, then re-reads the edited HTML from disk',
760
- 'Agent connects to remote MCP and calls html2pptx_create_export_job',
759
+ 'If visual review is needed, the agent opens the local edit-slide editor through the CLI or local stdio MCP, then re-reads the edited HTML from disk',
760
+ 'Agent connects to remote MCP or local stdio MCP and calls html2pptx_create_export_job',
761
761
  'Agent polls with html2pptx_wait_for_export_job until completed',
762
762
  'If the user wants to create an HTML template draft, the agent uses the html2pptx skill and remote MCP: infer title/tags from the HTML, run AI security preflight, validate, fix errors, save a draft, then return draftUrl for dashboard review',
763
763
  'Agent returns the completed job summary to the user',
764
764
  ],
765
765
  skillsLocalEditorTitle: 'Local Visual Editor',
766
766
  skillsLocalEditorLead:
767
- 'The edit-slide skill lets an agent open a local HTML slide deck in a PowerPoint-style visual editor served from an available loopback origin such as http://localhost:<port>. Hosted edit-slide is not allowed for local file editing. The local dev script chooses a free port and registers it in .html2pptx/edit-slide/editor-server.json inside the current project. The deck file stays on the user machine and is read/written through a localhost bridge started by the local stdio MCP tool. If the local MCP server is not already configured, the agent should explain that it will change MCP settings and ask the user before adding it.',
768
- skillsLocalEditorCode: `# Use the local MCP tool only
769
- html2pptx_open_local_slide_editor({ "filePath": "html2pptx/slides.html" })
767
+ 'The edit-slide skill lets an agent open a local HTML slide deck in a PowerPoint-style visual editor served from an available loopback origin such as http://localhost:<port>. Hosted edit-slide is not allowed for local file editing. The local dev script chooses a free port and registers it in .html2pptx/edit-slide/editor-server.json inside the current project. The deck file stays on the user machine and is read/written through a localhost bridge started by the CLI or by the local stdio MCP tool. If the local MCP server is not already configured, the agent should explain that it will change MCP settings and ask the user before adding it.',
768
+ skillsLocalEditorCode: `# From the project that contains your slide HTML
769
+ node scripts/dev-studio.mjs
770
+ npx --yes https://html2pptx.app/downloads/html2pptx-cli-0.4.0.tgz edit ./html2pptx/slides.html
771
+
772
+ # If html2pptx-cli@0.4.0+ is available from npm
773
+ npx --yes html2pptx-cli edit ./html2pptx/slides.html
774
+
775
+ # If the CLI is installed globally
776
+ html2pptx edit ./html2pptx/slides.html
770
777
 
771
- # Claude Code local MCP setup
772
- npx -y -p html2pptx-local-mcp@latest html2pptx-install-mcp claude`,
778
+ # Print the URL instead of opening a browser
779
+ html2pptx edit ./html2pptx/slides.html --no-open`,
773
780
  skillsLocalEditorFlowTitle: 'How the local editor flow works',
774
781
  skillsLocalEditorFlow: [
775
- { label: '1. Choose remote or local MCP', detail: 'Use remote MCP for normal PPTX export and catalog/docs tools. Use local stdio MCP or `html2pptx edit <file>` when the agent must open or edit a local `.html` / `.htm` file through edit-slide. If local MCP is missing, use direct CLI when the local editor app is running or ask before installing it.' },
776
- { label: '2. Start bridge', detail: '`html2pptx_open_local_slide_editor` starts a tiny HTTP server on `127.0.0.1`. Unless a port is specified, the OS assigns a free port. Access is scoped to the current working directory.' },
782
+ { label: '1. Choose remote or local MCP', detail: 'Use remote MCP for normal PPTX export and catalog/docs tools. Use local stdio MCP only when the agent must open or edit a local `.html` / `.htm` file through edit-slide. If local MCP is missing, ask the user before installing it.' },
783
+ { label: '2. Start bridge', detail: '`html2pptx edit <file>` or `html2pptx_open_local_slide_editor` starts a tiny HTTP server on `127.0.0.1`. Unless a port is specified, the OS assigns a free port. Access is scoped to the current working directory.' },
777
784
  { label: '3. Open editor', detail: 'The command opens `http://localhost:<editor-port>/edit-slide?file=...&bridge=http://127.0.0.1:<bridge-port>#bridgeToken=...`. The one-time token is kept in the URL fragment and the editor removes it from the address bar after startup.' },
778
785
  { label: '4. Load local file', detail: 'The browser editor presents the token and fetches the selected `.html` or `.htm` file from the localhost bridge. No marketplace draft or public page is created.' },
779
786
  { label: '5. Edit visually', detail: 'Users can click slide elements and adjust text, typography, color, size, padding, margin, radius, border, opacity, and other properties from the right panel.' },
@@ -793,10 +800,10 @@ npx -y -p html2pptx-local-mcp@latest html2pptx-install-mcp claude`,
793
800
  ],
794
801
  skillsLocalEditorTroubleshootingTitle: 'Common issues',
795
802
  skillsLocalEditorTroubleshooting: [
796
- { issue: 'The local editor tool is not available', fix: 'Ask before adding local MCP with `npx -y -p html2pptx-local-mcp@latest html2pptx-install-mcp claude`.' },
797
- { issue: '`html2pptx edit` cannot find the local editor', fix: 'Start `node scripts/dev-studio.mjs` first, or pass the active loopback URL with `--base-url http://localhost:<port>`. Hosted edit-slide is never used.' },
803
+ { issue: 'The command is not found', fix: 'Start `node scripts/dev-studio.mjs`, then use `npx --yes https://html2pptx.app/downloads/html2pptx-cli-0.4.0.tgz edit ./path/to/slides.html`, or install `html2pptx-cli@0.4.0+` globally.' },
804
+ { issue: '`npx` is not available', fix: 'Use the already-configured local stdio MCP tool `html2pptx_open_local_slide_editor`, or ask before adding local MCP. If local MCP is unavailable, install/expose npm or a global `html2pptx` CLI first.' },
798
805
  { issue: 'The editor opens but the deck does not load', fix: 'Confirm the path is relative to the directory where the command was run and the file extension is `.html` or `.htm`.' },
799
- { issue: 'Changes do not save', fix: 'Keep the local MCP session running. Stopping it stops the localhost bridge.' },
806
+ { issue: 'Changes do not save', fix: 'Keep the terminal running. Closing the `html2pptx edit` process stops the localhost bridge.' },
800
807
  { issue: 'The agent wants to add local MCP', fix: 'Confirm with the user first. Local MCP is optional and only needed for MCP-driven local edit-slide sessions; remote MCP can still export PPTX without local file access.' },
801
808
  { issue: 'Another tab is read-only', fix: 'The editor uses a local tab lock to avoid two tabs writing to the same file. Use the active tab or click the transfer edit control.' },
802
809
  ],
@@ -841,9 +848,9 @@ echo 'HTML2PPTX_API_KEY=sk_live_xxxx' >> .env`,
841
848
  mcpTitle: 'MCP Integration',
842
849
  mcpSubtitle: 'What is MCP',
843
850
  mcpDescription:
844
- 'MCP (Model Context Protocol) is an open protocol that exposes backend capabilities to AI agents through a standardized tool interface. html2pptx.app supports two MCP surfaces: the remote HTTP MCP endpoint at /mcp for export, usage, docs, templates, catalog, and HTML template publishing workflows, and the local stdio MCP server for local edit-slide sessions through a localhost bridge. Use remote MCP when the agent needs to convert HTML to PPTX or create an HTML template draft. Use local stdio MCP or `html2pptx edit <file>` when the agent must open, preview, or edit a local HTML file on the user machine; local MCP does not publish templates.',
851
+ 'MCP (Model Context Protocol) is an open protocol that exposes backend capabilities to AI agents through a standardized tool interface. html2pptx.app supports two MCP surfaces: the remote HTTP MCP endpoint at /mcp for export, usage, docs, templates, catalog, and HTML template publishing workflows, and the local stdio MCP server for export tools plus local edit-slide sessions through a localhost bridge. Use remote MCP when the agent needs to convert HTML to PPTX or create an HTML template draft. Use local stdio MCP only when the agent must open, preview, or edit a local HTML file on the user machine; local MCP does not publish templates.',
845
852
  mcpSetupTitle: 'Installation & Setup',
846
- mcpSetupLead: 'Claude Code users can run the one-command installer to add both remote MCP and local edit-slide MCP. Use the remote-only command when local visual editing is not needed.',
853
+ mcpSetupLead: 'For Claude Code, users can run one command to register both remote export tools and local edit-slide. Remote MCP follows the hosted service; local MCP uses html2pptx-local-mcp@latest so future starts pick up the newest published package.',
847
854
  mcpEditorTabs: [
848
855
  {
849
856
  id: 'claude-code',
@@ -851,19 +858,20 @@ echo 'HTML2PPTX_API_KEY=sk_live_xxxx' >> .env`,
851
858
  icon: 'https://cdn.jsdelivr.net/gh/glincker/thesvg@main/public/icons/claude/default.svg',
852
859
  recommended: true,
853
860
  steps: [
854
- { title: 'Set up the remote server (recommended)', body: 'Run the following command in your terminal.', code: `claude mcp add --transport http html2pptx https://html2pptx.app/mcp` },
855
- { title: 'Manual setup for Claude Code', body: 'If the command above does not work, run the following to add the MCP server manually.', code: `claude mcp add html2pptx --transport http https://html2pptx.app/mcp` },
856
- { title: 'One-command remote + local setup', body: 'Installs the remote MCP for exports/docs/templates and the local MCP for edit-slide. It runs from the published package, so no repository checkout is required. The local MCP is registered through a stable launcher for reliable Claude Code startup.', code: `npx -y -p html2pptx-local-mcp@latest html2pptx-install-mcp claude` },
861
+ { title: 'Claude Code users: run this one line', body: 'This registers remote export as `html2pptx`, then writes local edit-slide as `html2pptx-local` directly into Claude Code user config.', code: `npx --yes --package html2pptx-local-mcp@latest html2pptx-install-mcp claude` },
862
+ { title: 'Manual remote setup', body: 'If you only need hosted export tools, add the remote MCP server directly.', code: `claude mcp add --scope user --transport http html2pptx https://html2pptx.app/mcp` },
863
+ { title: 'Compatible local edit-slide setup', body: 'If Claude Code stdio registration is unreliable, use the installer because it writes the local server entry directly.', code: `npx --yes --package html2pptx-local-mcp@latest html2pptx-install-mcp claude` },
857
864
  ],
858
- tip: 'To make the MCP server available across all projects, install it with the --scope user flag:\nclaude mcp add --scope user --transport http html2pptx https://html2pptx.app/mcp',
865
+ tip: 'The installer registers the remote MCP with user scope and writes the local stdio MCP directly to Claude Code user config for better compatibility.',
859
866
  },
860
867
  {
861
868
  id: 'codex',
862
869
  label: 'Codex',
863
870
  icon: 'https://cdn.jsdelivr.net/gh/glincker/thesvg@main/public/icons/openai/light.svg',
864
871
  steps: [
865
- { title: 'Run the CLI command (recommended)', body: 'Run the following command in your terminal. OAuth authentication will start automatically.', code: `codex mcp add html2pptx --url https://html2pptx.app/mcp` },
866
- { title: 'Optional local stdio MCP for edit-slide', body: 'Use this when Codex needs to launch local edit-slide for a `.html` file. It runs from the published package, so no repository checkout is required. The editor app and localhost bridge use free ports. Codex should ask before adding it because it modifies the local MCP configuration.', code: `codex mcp add html2pptx-local -- npx -y -p html2pptx-local-mcp@latest html2pptx-mcp` },
872
+ { title: 'Run the CLI command (recommended)', body: 'Add the hosted remote MCP server. OAuth authentication will start automatically.', code: `codex mcp add html2pptx --url https://html2pptx.app/mcp` },
873
+ { title: 'Manual remote setup', body: 'If you only need hosted export tools, add the remote MCP server directly.', code: `codex mcp add html2pptx --url https://html2pptx.app/mcp` },
874
+ { title: 'Optional local stdio MCP for edit-slide', body: 'Use this only when Codex needs to launch local edit-slide for a `.html` file. It runs from the published package, so no repository checkout is required.', code: `codex mcp add html2pptx-local -- npx --yes --package html2pptx-local-mcp@latest html2pptx-mcp` },
867
875
  { title: 'Manual setup via codex.json', body: 'Alternatively, create or edit codex.json in your project root.', code: `{\n "mcpServers": {\n "html2pptx": {\n "type": "url",\n "url": "https://html2pptx.app/mcp"\n }\n }\n}` },
868
876
  ],
869
877
  },
@@ -1583,8 +1591,8 @@ echo 'HTML2PPTX_API_KEY=sk_live_xxxx' >> .env`,
1583
1591
  skillsTitle: 'Skills統合ガイド',
1584
1592
  skillsSubtitle: 'Skillsとは',
1585
1593
  skillsDescription:
1586
- 'Skillsは、AIコーディングエージェントにドメイン固有の知識とワークフローを追加するパッケージ機能です。html2pptx.app のスキルをインストールすると、エージェントがスライド用HTMLの作成方法を理解し、PPTX変換契約に対する検証を行い、必要に応じてローカル Visual Editor を開き、remote MCP のワークフローでエクスポートし、内蔵のremote MCP公開ワークフローでHTMLテンプレートdraftを作成できます。自然言語の指示だけで、本番品質のPowerPointファイルや作成者所有のHTML draftを生成できます。',
1587
- skillsHowItWorks: 'スキルには4つのコア機能がバンドルされています: (1) HTMLオーサリング知識 -- 高品質なPowerPointに変換されるHTML/CSSの書き方ルール、(2) MCPベースのエクスポート自動化 -- remote MCP に接続してジョブ作成・ステータスポーリング・結果取得を行う仕組み、(3) ローカル Visual Editor -- ユーザーがPPTX出力前にHTMLを目視確認・微調整したい場合に edit-slide を localhost bridge 経由で開く仕組み、(4) テンプレート公開 -- HTML draft を remote MCP の validate/publish ループに限定する仕組みです。local MCP の追加はユーザーのMCP設定を変更するため、エージェントは必ず事前に確認します。',
1594
+ 'Skillsは、AIコーディングエージェントにドメイン固有の知識とワークフローを追加するパッケージ機能です。html2pptx.app のスキルをインストールすると、エージェントがスライド用HTMLの作成方法を理解し、PPTX変換契約に対する検証を行い、必要に応じてローカル Visual Editor を開き、remote MCP または local MCP のワークフローでエクスポートし、内蔵のremote MCP公開ワークフローでHTMLテンプレートdraftを作成できます。自然言語の指示だけで、本番品質のPowerPointファイルや作成者所有のHTML draftを生成できます。',
1595
+ skillsHowItWorks: 'スキルには4つのコア機能がバンドルされています: (1) HTMLオーサリング知識 -- 高品質なPowerPointに変換されるHTML/CSSの書き方ルール、(2) MCPベースのエクスポート自動化 -- remote MCP または local stdio MCP に接続してジョブ作成・ステータスポーリング・結果取得を行う仕組み、(3) ローカル Visual Editor -- ユーザーがPPTX出力前にHTMLを目視確認・微調整したい場合に edit-slide を localhost bridge 経由で開く仕組み、(4) テンプレート公開 -- HTML draft を remote MCP の validate/publish ループに限定する仕組みです。local MCP の追加はユーザーのMCP設定を変更するため、エージェントは必ず事前に確認します。',
1588
1596
  skillsCompatibility: 'Claude Code、Cursor、GitHub Copilot、Windsurf、Cline、Codex 等 18以上のAIエージェントに対応。使うエージェントに対応する skills CLI コマンドを選ぶか、その他の対応エージェントは対話形式で選択します。',
1589
1597
  skillsWorkflowTitle: 'ワークフロー',
1590
1598
  skillsWorkflow: [
@@ -1592,24 +1600,31 @@ echo 'HTML2PPTX_API_KEY=sk_live_xxxx' >> .env`,
1592
1600
  'エージェントがスキル定義を読み取り、html2pptx.appのHTML契約を理解',
1593
1601
  'エージェントが .slide クラス要素と明示サイズ付きのスライドセーフHTMLを生成。1600x900 はデフォルト例',
1594
1602
  'エージェントが変換契約に対してマークアップを検証',
1595
- '目視確認が必要な場合は、local stdio MCP で edit-slide を開き、編集後のHTMLをディスクから再読み込み',
1596
- 'エージェントが remote MCP に接続し html2pptx_create_export_job を呼び出し',
1603
+ '目視確認が必要な場合は、CLI または local stdio MCP で edit-slide を開き、編集後のHTMLをディスクから再読み込み',
1604
+ 'エージェントが remote MCP または local stdio MCP に接続し html2pptx_create_export_job を呼び出し',
1597
1605
  'エージェントが html2pptx_wait_for_export_job で完了をポーリング',
1598
1606
  'HTMLテンプレートdraftを作る場合は、html2pptx スキルと remote MCP でHTMLから題名・タグを推定し、AIセキュリティ事前診断、検証、エラー修正、下書き保存を行い、draftUrlを返却',
1599
1607
  'エージェントが completed 状態のジョブサマリーをユーザーに返却',
1600
1608
  ],
1601
1609
  skillsLocalEditorTitle: 'ローカル Visual Editor',
1602
1610
  skillsLocalEditorLead:
1603
- 'edit-slide スキルを使うと、エージェントが作成したローカルHTMLスライドを、http://localhost:<port> のような空き loopback origin で動くPowerPoint風のノーコード編集画面で開けます。ローカルファイル編集に hosted edit-slide は使えません。ローカル dev script が空きポートを選び、現在のプロジェクト内の .html2pptx/edit-slide/editor-server.json に登録します。スライドHTMLファイルはユーザーのPC上に残り、CLI または local stdio MCP が起動する localhost bridge 経由で読み書きされます。local MCP が未設定の場合は、local editor が動いていれば `html2pptx edit <file>` を使い、MCP設定を変更する場合はユーザー確認を取ってから追加します。',
1604
- skillsLocalEditorCode: `# local MCP tool だけを使う
1605
- html2pptx_open_local_slide_editor({ "filePath": "html2pptx/slides.html" })
1611
+ 'edit-slide スキルを使うと、エージェントが作成したローカルHTMLスライドを、http://localhost:<port> のような空き loopback origin で動くPowerPoint風のノーコード編集画面で開けます。ローカルファイル編集に hosted edit-slide は使えません。ローカル dev script が空きポートを選び、現在のプロジェクト内の .html2pptx/edit-slide/editor-server.json に登録します。スライドHTMLファイルはユーザーのPC上に残り、CLI または local stdio MCP が起動する localhost bridge 経由で読み書きされます。local MCP が未設定の場合、エージェントはMCP設定を変更することを説明し、ユーザー確認を取ってから追加します。',
1612
+ skillsLocalEditorCode: `# スライドHTMLがあるプロジェクトで実行
1613
+ node scripts/dev-studio.mjs
1614
+ npx --yes https://html2pptx.app/downloads/html2pptx-cli-0.4.0.tgz edit ./html2pptx/slides.html
1615
+
1616
+ # npm から html2pptx-cli@0.4.0+ を使える場合
1617
+ npx --yes html2pptx-cli edit ./html2pptx/slides.html
1618
+
1619
+ # CLIをグローバルインストール済みの場合
1620
+ html2pptx edit ./html2pptx/slides.html
1606
1621
 
1607
- # Claude Code local MCP setup
1608
- npx -y -p html2pptx-local-mcp@latest html2pptx-install-mcp claude`,
1622
+ # ブラウザを自動で開かず、URLだけ表示
1623
+ html2pptx edit ./html2pptx/slides.html --no-open`,
1609
1624
  skillsLocalEditorFlowTitle: 'ローカル編集の仕組み',
1610
1625
  skillsLocalEditorFlow: [
1611
- { label: '1. remote / local MCP を選ぶ', detail: '通常のPPTX出力、docs、template、usage 取得は remote MCP を使えます。ローカル `.html` / `.htm` を edit-slide で開いて編集する場合は local stdio MCP または `html2pptx edit <file>` を使います。local MCP が未設定なら、直接CLIを使うか、追加前にユーザーへ確認します。' },
1612
- { label: '2. bridge を起動', detail: '`html2pptx_open_local_slide_editor` が `127.0.0.1` に小さなHTTPサーバーを起動します。ポートは指定しない限りOSが選ぶ空きポートになります。アクセス範囲はコマンドを実行したカレントディレクトリ内に限定されます。' },
1626
+ { label: '1. remote / local MCP を選ぶ', detail: '通常のPPTX出力、docs、template、usage 取得は remote MCP を使えます。ローカル `.html` / `.htm` を edit-slide で開いて編集する必要がある場合だけ local stdio MCP を使います。local MCP が未設定なら、追加前にユーザーへ確認します。' },
1627
+ { label: '2. bridge を起動', detail: '`html2pptx edit <file>` または `html2pptx_open_local_slide_editor` が `127.0.0.1` に小さなHTTPサーバーを起動します。ポートは指定しない限りOSが選ぶ空きポートになります。アクセス範囲はコマンドを実行したカレントディレクトリ内に限定されます。' },
1613
1628
  { label: '3. エディタを開く', detail: 'コマンドが `http://localhost:<editor-port>/edit-slide?file=...&bridge=http://127.0.0.1:<bridge-port>#bridgeToken=...` を開きます。ワンタイム token は URL fragment に置かれ、起動後にエディタがアドレスバーから消します。' },
1614
1629
  { label: '4. ローカルHTMLを読み込む', detail: 'ブラウザの編集画面が token を提示し、localhost bridge から対象の `.html` / `.htm` ファイルを取得します。マーケットプレイス下書きや公開ページは作成されません。' },
1615
1630
  { label: '5. ノーコードで編集', detail: 'スライド上の要素をクリックし、右パネルからテキスト、タイポグラフィ、色、サイズ、余白、角丸、ボーダー、不透明度などを調整できます。' },
@@ -1629,11 +1644,11 @@ npx -y -p html2pptx-local-mcp@latest html2pptx-install-mcp claude`,
1629
1644
  ],
1630
1645
  skillsLocalEditorTroubleshootingTitle: 'よくあるつまずき',
1631
1646
  skillsLocalEditorTroubleshooting: [
1632
- { issue: 'local editor tool が使えない', fix: '`npx -y -p html2pptx-local-mcp@latest html2pptx-install-mcp claude` local MCP を追加してよいか、先にユーザーへ確認してください。' },
1633
- { issue: '`html2pptx edit` が local editor を見つけられない', fix: '`node scripts/dev-studio.mjs` を先に起動するか、`--base-url http://localhost:<port>` loopback URL を渡してください。hosted edit-slide は使いません。' },
1647
+ { issue: 'コマンドが見つからない', fix: '`node scripts/dev-studio.mjs` を起動してから `npx --yes https://html2pptx.app/downloads/html2pptx-cli-0.4.0.tgz edit ./path/to/slides.html` を使うか、`html2pptx-cli@0.4.0+` をグローバルインストールしてください。' },
1648
+ { issue: '`npx` が使えない', fix: 'すでに設定済みの local stdio MCP ツール `html2pptx_open_local_slide_editor` を使うか、local MCP を追加する前にユーザーへ確認してください。local MCP も使えない場合は、npm またはグローバル `html2pptx` CLI を先に使える状態にします。' },
1634
1649
  { issue: '画面は開くがスライドが読み込まれない', fix: 'コマンドを実行したディレクトリからの相対パスになっているか、拡張子が `.html` / `.htm` かを確認してください。' },
1635
- { issue: '編集内容が保存されない', fix: 'local MCP セッションを終了しないでください。bridge が止まると保存できません。' },
1636
- { issue: 'エージェントが local MCP を追加しようとする', fix: '先にユーザーへ確認してください。local MCP は MCP 経由でローカル edit-slide を開く場合だけ必要です。CLI `html2pptx edit <file>` でも local editor を開けます。' },
1650
+ { issue: '編集内容が保存されない', fix: 'ターミナルで起動している `html2pptx edit` を終了しないでください。bridge が止まると保存できません。' },
1651
+ { issue: 'エージェントが local MCP を追加しようとする', fix: '先にユーザーへ確認してください。local MCP は MCP 経由でローカル edit-slide を開く場合だけ必要です。remote MCP だけでもPPTX出力はできます。' },
1637
1652
  { issue: '別タブが読み取り専用になる', fix: '同じHTMLを複数タブで編集して競合しないよう、エディタはタブロックを使います。編集権限のあるタブを使うか、画面上の移譲操作を行ってください。' },
1638
1653
  ],
1639
1654
  skillsSetupTitle: 'セットアップ',
@@ -1677,9 +1692,9 @@ echo 'HTML2PPTX_API_KEY=sk_live_xxxx' >> .env`,
1677
1692
  mcpTitle: 'MCP統合ガイド',
1678
1693
  mcpSubtitle: 'MCPとは',
1679
1694
  mcpDescription:
1680
- 'MCP (Model Context Protocol) は、標準化されたツールインターフェースを通じてAIエージェントにバックエンド機能を公開するオープンプロトコルです。html2pptx.app は2種類のMCPサーフェスを提供します。remote HTTP MCP (`/mcp`) はエクスポート、usage、docs、templates、catalog、HTMLテンプレート公開に使います。local stdio MCP localhost bridge 経由でローカルHTMLを edit-slide で開くために使います。HTMLをPPTXに変換する、またはHTMLテンプレートdraftを作るなら remote MCP、ユーザーPC上の `.html` を開いてプレビュー・編集するなら local MCP を選びます。local MCP はテンプレート公開には使いません。',
1695
+ 'MCP (Model Context Protocol) は、標準化されたツールインターフェースを通じてAIエージェントにバックエンド機能を公開するオープンプロトコルです。html2pptx.app は2種類のMCPサーフェスを提供します。remote HTTP MCP (`/mcp`) はエクスポート、usage、docs、templates、catalog、HTMLテンプレート公開に使います。local stdio MCP は同じエクスポート系ツールに加えて、localhost bridge 経由でローカルHTMLを edit-slide で開くために使います。HTMLをPPTXに変換する、またはHTMLテンプレートdraftを作るなら remote MCP、ユーザーPC上の `.html` を開いてプレビュー・編集するなら local MCP を選びます。local MCP はテンプレート公開には使いません。',
1681
1696
  mcpSetupTitle: 'インストール & セットアップ',
1682
- mcpSetupLead: 'Claude Code では1コマンドインストーラで remote MCP と edit-slide local MCP をまとめて追加できます。ローカル編集が不要な場合だけ remote-only コマンドを使ってください。',
1697
+ mcpSetupLead: 'Claude Codeユーザーは1コマンドで remote exportlocal edit-slide の両方を登録できます。remote MCP は hosted service 側の更新が反映され、local MCP html2pptx-local-mcp@latest 経由で起動するため、次回起動時に新しい公開パッケージへ追従できます。',
1683
1698
  mcpEditorTabs: [
1684
1699
  {
1685
1700
  id: 'claude-code',
@@ -1687,19 +1702,20 @@ echo 'HTML2PPTX_API_KEY=sk_live_xxxx' >> .env`,
1687
1702
  icon: 'https://cdn.jsdelivr.net/gh/glincker/thesvg@main/public/icons/claude/default.svg',
1688
1703
  recommended: true,
1689
1704
  steps: [
1690
- { title: 'リモートサーバーをセットアップ(推奨)', body: 'ターミナルで以下のコマンドを実行してください。', code: `claude mcp add --transport http html2pptx https://html2pptx.app/mcp` },
1691
- { title: '手動セットアップ', body: 'コマンドが使えない場合は、以下を実行してMCPサーバーを手動で追加してください。', code: `claude mcp add html2pptx --transport http https://html2pptx.app/mcp` },
1692
- { title: 'Remote + Local を1コマンドで追加', body: 'PPTX出力・docs・templates 用の remote MCP と、edit-slide 用の local MCP をまとめて追加します。公開パッケージから導入するため、リポジトリの checkout は不要です。local MCP は Claude Code が安定して起動できるよう stable launcher として登録されます。', code: `npx -y -p html2pptx-local-mcp@latest html2pptx-install-mcp claude` },
1705
+ { title: 'Claude Codeユーザーはこの1行でOK', body: '`html2pptx` として remote export を登録し、`html2pptx-local` として local edit-slide を Claude Code の user config に直接書き込みます。', code: `npx --yes --package html2pptx-local-mcp@latest html2pptx-install-mcp claude` },
1706
+ { title: 'remote だけ手動セットアップ', body: 'PPTX出力などのホスト側ツールだけ必要な場合はこちらを使います。', code: `claude mcp add --scope user --transport http html2pptx https://html2pptx.app/mcp` },
1707
+ { title: 'local edit-slide 互換セットアップ', body: 'Claude Code stdio 登録が不安定な場合も、このインストーラーが local server 設定を直接書き込みます。', code: `npx --yes --package html2pptx-local-mcp@latest html2pptx-install-mcp claude` },
1693
1708
  ],
1694
- tip: 'すべてのプロジェクトでMCPサーバーを使用するには --scope user フラグを追加してください:\nclaude mcp add --scope user --transport http html2pptx https://html2pptx.app/mcp',
1709
+ tip: 'このインストーラーは remote MCP user scope で登録し、互換性のため local stdio MCP Claude Code の user config に直接書き込みます。',
1695
1710
  },
1696
1711
  {
1697
1712
  id: 'codex',
1698
1713
  label: 'Codex',
1699
1714
  icon: 'https://cdn.jsdelivr.net/gh/glincker/thesvg@main/public/icons/openai/light.svg',
1700
1715
  steps: [
1701
- { title: 'CLIコマンドで追加(推奨)', body: 'ターミナルで以下のコマンドを実行してください。OAuth認証が自動的に開始されます。', code: `codex mcp add html2pptx --url https://html2pptx.app/mcp` },
1702
- { title: 'edit-slide 用 local stdio MCP(任意)', body: 'Codex がローカル `.html` を edit-slide で開く必要がある場合だけ追加します。公開パッケージから起動するため、リポジトリのcheckoutは不要です。エディタ本体と localhost bridge は空きポートを使います。MCP設定を変更するため、Codex は実行前にユーザー確認を取ってください。', code: `codex mcp add html2pptx-local -- npx -y -p html2pptx-local-mcp@latest html2pptx-mcp` },
1716
+ { title: 'CLIコマンドで追加(推奨)', body: 'hosted remote MCP server を追加します。OAuth認証が自動的に開始されます。', code: `codex mcp add html2pptx --url https://html2pptx.app/mcp` },
1717
+ { title: 'remote だけ手動セットアップ', body: 'PPTX出力などのホスト側ツールだけ必要な場合はこちらを使います。', code: `codex mcp add html2pptx --url https://html2pptx.app/mcp` },
1718
+ { title: 'edit-slide 用 local stdio MCP(任意)', body: 'Codex がローカル `.html` を edit-slide で開く必要がある場合だけ追加します。公開パッケージから起動するため、リポジトリの checkout は不要です。', code: `codex mcp add html2pptx-local -- npx --yes --package html2pptx-local-mcp@latest html2pptx-mcp` },
1703
1719
  { title: 'codex.json で手動セットアップ', body: 'コマンドが使えない場合は、プロジェクトルートの codex.json に以下を追加してください。', code: `{\n "mcpServers": {\n "html2pptx": {\n "type": "url",\n "url": "https://html2pptx.app/mcp"\n }\n }\n}` },
1704
1720
  ],
1705
1721
  },
@@ -3,6 +3,7 @@ export interface EditOptions {
3
3
  port?: string;
4
4
  baseUrl?: string;
5
5
  noOpen?: boolean;
6
+ open?: boolean;
6
7
  json?: boolean;
7
8
  }
8
9
  interface BridgeContext {