Skip to content

feat(replit): add ZERO-294 Replit Agent adapter#50

Closed
spencercharest wants to merge 1 commit into
mainfrom
spencer/zero-309-replit-agent-adapter-skills-mcp-integration-listing
Closed

feat(replit): add ZERO-294 Replit Agent adapter#50
spencercharest wants to merge 1 commit into
mainfrom
spencer/zero-309-replit-agent-adapter-skills-mcp-integration-listing

Conversation

@spencercharest

@spencercharest spencercharest commented Jun 15, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Adds zero-replit, a Replit Agent project-template adapter for ZERO-309 under ZERO-294.
  • Ships the Zero skill to /.agents/skills/zero and a Replit MCP install-link payload for https://mcp.zero.xyz.
  • Adds scripts/build-replit.sh, guides/replit.md, README install link, and a 1.4.0 version bump through make minor.

guides/agent-install.md is intentionally not modified in this PR.

Official Sources Used

Install / Update Surfaces

Human in-Replit flow:

  • Replit skills are project skills under /.agents/skills or installed from the Skills pane.
  • Replit MCP servers are UI-managed through the Integrations pane or Add-to-Replit install links. There is no project JSON MCP config file.
  • If Zero is listed, click Add to Replit and authorize it.
  • Otherwise add a custom MCP server:
    • Display name: Zero
    • URL: https://mcp.zero.xyz
    • Headers: none

MCP install-link payload:

{
  "displayName": "Zero",
  "baseUrl": "https://mcp.zero.xyz",
  "headers": []
}

Terminal/project-template flow:

curl -fsSL https://zero.xyz/install.sh | bash
rm -rf /tmp/zero-plugins
git clone --depth 1 https://github.com/officialzeroxyz/zero-plugins /tmp/zero-plugins
/tmp/zero-plugins/scripts/build-replit.sh
cp -R /tmp/zero-plugins/dist/zero-replit/. .

Update flow: rerun the standalone runner installer and rebuild/copy dist/zero-replit/.

Proposed guides/agent-install.md Notes

Do not apply these in this PR; collect them when the runbook is reworked.

  • Add a Replit Agent section covering /.agents/skills/zero/SKILL.md as the project skill path.
  • State clearly that Replit has no local plugin bundle, lifecycle hooks, prompt-submit hooks, tool-approval hooks, slash-command files, or project MCP config file for Agent prompts.
  • For MCP, document the Integrations pane and Add-to-Replit install-link flow. Use payload:
    • displayName: Zero
    • baseUrl: https://mcp.zero.xyz
    • headers: []
  • Note that Replit scans MCP tools before execution and may block suspicious tools.
  • Keep standalone runner install/update as curl -fsSL https://zero.xyz/install.sh | bash when a Replit shell is available.
  • Track pre-listing mcp.zero.xyz in the Replit MCP list / partner skills directory as a product-side follow-up, not a repo-code change.

Verification

Local checks:

  • make minor -> bumped all manifests to 1.4.0.
  • scripts/build-replit.sh --tar dist/zero-replit.tgz
  • jq -e . plugins/zero-replit/manifest.json plugins/zero-replit/replit/mcp-install.json
  • make version -> 1.4.0
  • tar -tzf dist/zero-replit.tgz
  • cmp -s plugins/zero/skills/zero/SKILL.md dist/zero-replit/.agents/skills/zero/SKILL.md
  • git diff -- guides/agent-install.md -> no diff

Docker template + copied-auth Zero loop:

  • Image: node:24-bookworm
  • Copied host ~/.zero into the container as $HOME/.zero.
  • Installed container-local @zeroxyz/cli@latest.
  • Applied dist/zero-replit/ into a clean /work/project.
  • Validated manifest.json and replit/mcp-install.json with jq.
  • Verified the generated skill matches the shared Zero skill.
  • Verified Zero auth in Docker as spencer@pie.org.
  • Ran the required CDN capability flow without zero review:
    • search: zero search "cdn.withzero.xyz upload txt file" --json
    • get: zero get cdn-withzero-xyz-static-site-file-cdn-upload-a0d9f22f
    • fetch: zero fetch --json --capability cdn-withzero-xyz-static-site-file-cdn-upload-a0d9f22f https://cdn.withzero.xyz/api/v1/uploads -d @/tmp/zero-cdn-body.json --max-pay 0.001
    • run ID: run_H72uGFZIYPEoT2XiPRjYy
    • returned URL: https://cdn.withzero.xyz/LolkTqxW/agent-harness-e2e-replit-docker-20260615T002804Z.txt
    • payment: 0 USDC via mpp on tempo
    • returned body verified with curl + cmp: ZERO-309 Replit Docker copied-auth CDN upload check 20260615T002804Z

Claude-style plugin compatibility and simpler install option

Full Claude Code plugin package support: No. Replit Agent uses .agents/skills and UI-managed Integrations/MCP. It does not read Claude Code .claude-plugin packages as a plugin install path.

What this means for users:

  • This adapter should be product/listing driven, not build driven.

  • Consumer-friendly flow should be:

    1. Add the Zero skill to the Replit workspace through the Skills UI or project .agents/skills.
    2. Add Zero MCP from the Replit Integrations UI or an Add-to-Replit link for https://mcp.zero.xyz.
    
  • If there is no marketplace/listing yet, the PR should frame the repo files as maintainer/product assets. End users should not clone and run a build script for Replit.

GitHub Releases / no-build install check

Result: No native Gemini-style GitHub Release install path. Replit Agent's documented MCP surface is one-click Add to Replit or custom MCP UI. Project skills live in .agents/skills, but I did not find a Replit installer that consumes GitHub Release assets for agent skills/plugins.

Best no-build consumer path:

1. Add Zero MCP through Replit's Integrations / Add to Replit flow.
2. Add the Zero skill through Replit's Skills UI or project `.agents/skills`.

A GitHub Release asset is not the right primary distribution. At most, use it as a downloadable skill/template package for users who want to copy files manually. Product-side Add to Replit/MCP listing work is the better no-build path.

Status

Draft because Replit Agent and Replit MCP installation are UI-only; there is no documented local Replit Agent CLI or project config path to exercise in Docker. The template and copied-auth Zero runner path are verified, but full Replit Agent UI verification remains.

@spencercharest

Copy link
Copy Markdown
Collaborator Author

Not folded into #63 as a matrix entry, deliberately: Replit Agent has no local footprint zero init can target — no supported local CLI, no $HOME config dir (skills live at the cloud Repl's project root, MCP is UI/install-link managed), and no hooks. Re-verified 2026-07-02. The consumer path stays guide/product-side (Add-to-Replit link for https://mcp.zero.xyz, Skills directory listing), as noted in #63's "not added" section. The adapter-template work here stays available on this branch if we later ship per-host templates.

spencercharest added a commit that referenced this pull request Jul 2, 2026
* feat(zero): add 15 agents/harnesses to the install matrix

Folds the ZERO-294 adapter PRs (#37-#56, excl. #48/#58) into
plugins/zero/agents.json: amp, antigravity, cline, continue-cli, copilot,
crush, cursor, devin, goose, hermes, kilo-code, opencode, qwen-code, trae,
zed. Roo Code (#53) and Replit Agent (#50) are not addable (product shut
down / no local footprint). Existing kiro (#42) and warp (#46) entries were
re-verified and stand as-is.

qwen-code is plugin-installable (verified live: non-interactive marketplace
install with --consent, native --auto-update); everything else is
standalone-only. Hook fragments added where the host has a JSON hook config
whose semantics tolerate our scripts: continue-cli (full Claude-compatible),
devin (SessionStart+UserPromptSubmit), qwen-code (full, ms timeouts),
copilot/cursor/goose (SessionStart only, host dialects).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* ci(version-check): detect manifests by top-level version key, not grep

agents.json now carries host hook-dialect fragments that legitimately
contain a nested "version" field (Copilot/Cursor hooks files); the grep
matched it and lockstep failed on a non-manifest.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* feat(zero): drop standalone.mcp from new matrix entries

MCP config targets are only needed for ephemeral environments where auth
session data cannot be written to disk; the new entries are all persistent
hosts. kiro/warp keep their pre-existing blocks. The researched per-host
MCP surfaces remain documented in the closed adapter PRs.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* feat(zero): drop standalone.mcp from kiro and warp too

MCP config targets are only for ephemeral environments where auth session
data cannot be written to disk; no matrix entry needs one.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant