with one click
ln-013-config-syncer
// Use when installing or verifying this marketplace in Claude and Codex, aligning selected plugins, MCP settings, and Codex execution defaults.
// Use when installing or verifying this marketplace in Claude and Codex, aligning selected plugins, MCP settings, and Codex execution defaults.
[HINT] Download the complete skill directory including SKILL.md and all related files
| name | ln-013-config-syncer |
| description | Use when installing or verifying this marketplace in Claude and Codex, aligning selected plugins, MCP settings, and Codex execution defaults. |
| license | MIT |
Paths: File paths (
references/) are relative to this skill directory.
Type: L3 Worker Category: 0XX Shared
Installs or verifies this repository's marketplace and selected plugins for Claude Code and Codex CLI without making either agent the source of truth for the other. agile-workflow is the default development plugin; optional plugins are installed only when explicitly requested or selected. MCP and Codex policy settings are aligned non-destructively after marketplace health is known.
MANDATORY READ: Load references/coordinator_summary_contract.md, references/environment_worker_runtime_contract.md, and references/worker_runtime_contract.md
MANDATORY READ: Load references/agent_skill_roots_contract.md
| Direction | Content |
|---|---|
| Input | OS info, disabled flags per agent, targets (claude / codex / both / all), plugins (agile-workflow default, explicit list, or all), dry_run flag, optional auto_install_providers flag, optional runId, optional summaryArtifactPath |
| Output | Structured summary envelope with payload.status = completed / skipped / error, plus per-target alignment outcomes in changes / detail |
If summaryArtifactPath is provided, write the same summary JSON there. If not provided, return the summary inline and remain fully standalone. If runId is not provided, generate a standalone run_id before emitting the summary envelope.
dry_run=true is detection-only: do not register marketplaces, install plugins, edit MCP/Codex config, write .bak files, or auto-install providers. Return planned actions and drift details in the summary.
Runtime family: environment-worker-runtime
Phase profile:
PHASE_0_CONFIGPHASE_1_DISCOVER_STATEPHASE_2_VERIFY_MARKETPLACE_INSTALLSPHASE_3_ALIGN_MCP_SETTINGSPHASE_4_ALIGN_CODEX_POLICY
5a. PHASE_4A_MCP_PROVIDER_CHECKPHASE_5_WRITE_SUMMARYPHASE_6_SELF_CHECKRuntime rules:
summary_kind=env-marketplace-alignrun_id and write the default worker-family artifact pathrunId and summaryArtifactPath and must write the summary to the exact provided pathAlways build a structured env-marketplace-align summary envelope per:
references/coordinator_summary_contract.mdreferences/environment_worker_runtime_contract.mdPayload fields:
targetsplugin_alignmentmarketplace_healthmcp_alignmentmcp_providerscodex_execution_defaultsstatus| Agent | Windows | macOS / Linux |
|---|---|---|
| Claude (primary) | %USERPROFILE%\.claude.json | ~/.claude.json |
| Claude (fallback) | %USERPROFILE%\.claude\settings.json | ~/.claude/settings.json |
| Codex | %USERPROFILE%\.codex\config.toml | ~/.codex/config.toml |
Discover State -> Verify Marketplace Installs -> Align MCP -> Align Codex Policy -> Verify & Report
~/.claude.json (primary) + ~/.claude/settings.json (fallback)mcpServers, enabled marketplaces/plugins, and hook state~/.codex/config.toml[mcp_servers.*], [marketplaces.*], top-level approval_policy, and top-level sandbox_mode.claude-plugin/marketplace.json.agents/plugins/marketplace.jsonplugins/*/.codex-plugin/plugin.jsonagile-workflowplugins=all, include every plugin listed by the marketplaceagile-workflow plus the requested pluginsagile-workflowFor each target where disabled is not true:
| Target | Expected install model | Verification |
|---|---|---|
| Claude | Native Claude marketplace | Marketplace is registered through Claude plugin settings and selected plugins resolve from .claude-plugin/marketplace.json |
| Codex | Native Codex marketplace | Marketplace is registered through Codex plugin settings and selected plugins resolve from .agents/plugins/marketplace.json / plugins/*/.codex-plugin/plugin.json |
Install policy:
/plugin marketplace add levnikolaevich/claude-code-skills/plugin install {plugin}@levnikolaevich-skills-marketplacecodex plugin marketplace add levnikolaevich/claude-code-skills.agents/plugins/marketplace.json and plugins/{plugin}/.codex-plugin/plugin.json; if the installed Codex version exposes plugin-level selection only through an interactive native flow, report that exact step instead of fabricating a non-existent CLI commandRules:
dry_run=true, do not run marketplace add/install commands; report the exact commands that would run.node tools/marketplace/validate.mjs when the repo root is available. Report failure as marketplace drift.MCP settings are aligned by server name. No target is the universal source of truth.
Merge strategy:
mcpServers and Codex [mcp_servers.*]..bak before modifying any config file.dry_run=true, report the merge plan only; do not create .bak files or edit config.Field mapping:
| Semantic field | Claude JSON | Codex TOML |
|---|---|---|
| command | command | command |
| args | args | args |
| env | env | [mcp_servers.{name}.env] |
| HTTP URL | type: "http" + url | url |
| headers | headers | http_headers |
Codex-only fields to preserve:
bearer_token_env_var, enabled_tools, disabled_tools, startup_timeout_sec, tool_timeout_sec, enabled, required
Windows implementation note: Config format conversions with regex or backslash escaping MUST use a temporary .mjs script file, not inline node -e or bash heredocs.
Claude hooks:
Codex hooks:
[features] codex_hooks = true alias. Current Codex uses the stable hooks feature and the canonical block is pure [hooks.*] TOML..bak of each edited config.toml before any edit (same policy as the MCP merge).Codex execution defaults:
Managed Codex defaults for low-friction setup:
approval_policy = "never"
sandbox_mode = "danger-full-access"
Decision logic:
| Condition | Action |
|---|---|
Codex target disabled: true | SKIP, report disabled |
| defaults already present | SKIP, report already aligned |
| one or both keys missing/drifted | Patch only top-level managed keys, preserve unrelated keys/tables, create .bak first |
Rules:
approval_policy and top-level sandbox_mode.[windows].sandbox; it is a different Windows-specific knob.model, projects, notice, [marketplaces.*], and [mcp_servers.*].MANDATORY READ: Load references/mcp_provider_requirements.md.
Runs once per project invocation after MCP alignment. Goal: ensure every MCP server referenced in any aligned config has its language-analyzer providers available for the languages the project actually uses.
pyproject.toml, package.json, tsconfig.json, Cargo.toml, go.mod, *.csproj. Use mcp__hex-line__inspect_path to probe; do not shell out.references/mcp_provider_requirements.md. For hex-graph, delegate to mcp__hex-graph__install_graph_providers.mcp__hex-graph__install_graph_providers({ mode: "check", path: <project_root> }). Do NOT auto-install unless auto_install_providers=true.environment_state.json under mcp_providers.Verify:
approval_policy = "never"sandbox_mode = "danger-full-access"Marketplace and Config Alignment:
| Action | Target | Status |
|----------------|--------|-----------------------------------------------------|
| Marketplace | Claude | registered; agile-workflow installed |
| Marketplace | Codex | registered; native plugin manifests validated |
| MCP align | Claude | 4 servers aligned (0 deleted) |
| MCP align | Codex | 4 servers aligned (1 new) |
| Execution mode | Codex | approval_policy=never; sandbox_mode=danger-full-access |
| Hooks | Codex | skipped (not supported) |
agile-workflow is installed or verified by default because it contains the development workflow.plugins=all..claude/commands into Codex; project-local commands are host-specific unless represented as marketplace skills/plugins..bak before modifying any config file.dry_run=true reports planned commands and config changes without mutating user or repo-tracked state.disabled flags. Skip all operations for disabled agents.| DON'T | DO |
|---|---|
| Treat Claude as Codex source of truth | Install each agent independently |
Symlink .codex/skills to .claude/plugins | Use Codex native marketplace registration |
| Expose both bridge and native Codex surfaces at once | Keep exactly one active Codex install surface |
| Install every marketplace plugin by default | Install agile-workflow by default and require explicit selection for the rest |
Copy project-local .claude/commands to Codex | Represent reusable behavior as marketplace skills/plugins |
| Overwrite target config from scratch | Read -> deep-merge -> backup -> edit |
| Delete plugin/cache directories automatically | Report exact cleanup steps and require explicit approval |
agile-workflow verified or installed for enabled targetsdry_run=true performed no marketplace, plugin, config, backup, or provider mutationsVersion: 2.0.0 Last Updated: 2026-04-14