Repository navigation
Conversation
Every install command an agent or a person can copy from our agent-facing surfaces now works today, and a test keeps it that way. - pcc-node: its only PyPI release (0.1.0) is yanked and 0.1.1 is pending, so `pip install pcc-node` fails. llms.txt, pcc.json, PCC-NETWORK.md, README, AGENTS.md, CLAUDE.md, both copies of the pcc skill, AGENT_INTEGRATION.md and the landing page now say it is pending and point to the API flow or the MCP server. The landing page's three install CTAs show the verified `claude mcp add --transport http pcc https://capability.network/mcp`, and its GitHub links point to the repo instead of back to capability.network. - @pcc on npm: no @pcc package is published (npx and npm give E404). PCC-NETWORK.md and the Claude Code quickstart stop installing @pcc/operator-agent-runtime, pcc.json marks that runtime as not built, and the quickstart shows the job-offers poll-and-claim calls that work now. - Claude Code has no `/skills install <url>` (in 2.1.285, `/skills` only lists skills). The /start page and the quickstart now show the download that works: mkdir -p ~/.claude/skills/pcc, then curl the skill into it. apps/dashboard/src/__tests__/agent-facing-install-honesty.test.ts: 4 of its 7 tests fail against master's files and all 7 pass here. It pins: no pip install of pcc-node and no PyPI link (flip PCC_NODE_ON_PYPI when 0.1.1 ships), no npm @pcc install, no `/skills install`, and one `claude mcp add` form. whitepaper.md is allowlisted for pcc-launch, with a ratchet test that fails once it is fixed. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…AUDE.md to #452 Realigns this PR with the status board (v3.131) and adk's #452. - adk is the single writer of the agent pack and the pcc skill (steward #3992), and #452 already fixes CLAUDE.md's counts and pip lines. So the two skill copies and CLAUDE.md go back to master's text here. - pcc-node installs now use #452's form, pip install "pcc-node[crypto]>=0.1.1", instead of "not installable right now". 0.1.1 is due on PyPI by 10-01 (board ADK item 1), and nothing merges before Oct 5, so the command is right whenever this text is read. The floor also keeps everyone off the yanked 0.1.0, which ships the N66 shell executor. The command uses double quotes, so it works in cmd.exe too. The landing page's pip CTAs and PyPI links come back with the floor; its GitHub links still point to the repo. - install.html (on the steward's list): it says 250+ tools instead of 230+, and drops the stale "~207 KB" size (the pack is 265 KB). Its hand-off prompt now provisions the key before the template call that needs it, says @pcc/kernel is not on npm (so work in a clone), and names MachineAdapter's real methods. - docs/MCP_INSTALL.md becomes a pointer to the one public copy, which #414 fixes, instead of a second copy that drifts and still says npx @pcc/mcp-server. The guard test now pins #452's floor rule instead of "no pip install". It also catches quoted installs, uvx and JSON-escaped newlines, covers docs/MCP_INSTALL.md, and accepts `claude mcp add` with trailing options. 5 of its 7 tests fail against master's files, and all 7 pass here. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
… requires
POST /api/job-offers/:id/claim answers 400 missing_field unless the JSON body
names the claiming kernel (job-offers.ts:268-270). The quickstart's example
sent no body, so it could never succeed. It now sends
{"kernelId": "<your kernel id>"} with a JSON Content-Type, and
PCC-NETWORK.md says the claim needs the key and that body.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…line continuations A `pip install \` continuation put pcc-node on the next line, where the per-line match never saw it, so the guard missed that form. Continuations are now joined before matching. A table-driven case pins the helper. It must flag seven unfloored forms, including python -m pip, --user, ==0.1.0, a floor without the crypto extra, a continuation and uvx. It must pass the floored forms and a sentence that merely says "pip-installable". Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
The 9/29 install-path audit found that our public install instructions don't work: agents that read
llms.txt,pcc.jsonor the landing page are told to run commands that fail. The ADK and hackathon track depends on agents being able to connect. The steward's list for this lane (from the audit and rehearsal R0) covers the stale docs outside the agent pack:install.html, rootAGENTS.md,MCP_INSTALL.mdand the Claude Code quickstart. The agent pack and the pcc skill belong to adk (#452).pip install pcc-nodepip install "pcc-node[crypto]>=0.1.1", the form #452 uses. 0.1.1 is due by 10-01 (board ADK item 1).npx -y @pcc/mcp-server,npm install -g @pcc/operator-agent-runtime,pnpm add @pcc/operator-agent-runtime@pccpackage is published, and the operator runtime isn't in the repo either./skills install https://capability.network/skills/pcc.md/skillsonly lists skills.mkdir -p ~/.claude/skills/pcc, thencurlthe skill into it.Merge order
The pip lines assume 0.1.1 is on PyPI. Merge this after item 1 publishes it. Nothing merges before Oct 5 anyway, and the target is 10-01. If 0.1.1 slips past then, hold this PR: until then, the floored command fails with "No matching distribution found for pcc-node>=0.1.1".
The hosted MCP lines also need a prod setting. Today
https://capability.network/mcpanswersinitialize, then failstools/listwith-32600 PCC_API_BASE_URL is not set — the MCP proxy is disabled. #271's fail-closed guard shipped, and the variable was never set on prod, so every MCP client gets zero tools. That is a live hole, and it is on master already:llms.txt, the skill and the MCP Registry listing all point there. The fix is one Railway variable,PCC_API_BASE_URL=https://capability.network, and it's the operator's. This PR'sclaude mcp addlines are right once it's set.What changes
pcc-node: these files install with
pip install "pcc-node[crypto]>=0.1.1":llms.txtandpcc.json(onboarding.one_command);PCC-NETWORK.md,README.mdandAGENTS.md;docs/AGENT_INTEGRATION.md;The floor keeps everyone off the yanked 0.1.0. The
cryptoextra is what the node needs to sign. Double quotes make the command work in bash, zsh, PowerShell and cmd.exe.Landing page: its three "GitHub" links pointed back to capability.network. They now point to the repo.
@pcc on npm:
PCC-NETWORK.mdand the quickstart no longer install@pcc/operator-agent-runtime.pcc.jsonmarks that runtimenot built.GET /api/job-offers/open?capabilityType=…(public), thenPOST /api/job-offers/:id/claimwith a key and thekernelIdbody the route requires.docs/MCP_INSTALL.mdis now a short pointer to the one public copy,apps/dashboard/public/MCP_INSTALL.md, which fix(docs,gateway): install calls to action that work, and no local paths (N26) #414 rewrites and the gateway serves at/MCP_INSTALL.md. It was a second copy that had drifted and still saidnpx -y @pcc/mcp-server(and a personalC:/Users/…path). The pointer keeps the one-line hosted-MCP command./skills install: the/startpage (start_hereinpcc.json) and the quickstart now show the download that works.curl -ointo a directory before creating it; the order is fixed.claude mcp add --transport http pcc https://capability.network/mcpas the alternative that needs no install.install.html:/api/sdk/adapter-template/*returns 401 without one).@pcc/kernelis not on npm, so the agent works in a clone.MachineAdapter's real methods,getStatus,execute,getProgress,onEvidenceanddispose, which the served templates also implement. It used to listconnect,getHealthandexecuteJob, which exist nowhere.Guard test
apps/dashboard/src/__tests__/agent-facing-install-honesty.test.ts(8 tests) pins the install matcher with a table of forms it must flag (includingpython -m pip,==0.1.0, a floor without the extra, a line continuation anduvx) and forms it must pass. It checks that:public/names 0.1.1 or later with thecryptoextra, the same rule as fix(agent-pack): only true statements, attempt reporting, #427 folded in, the operator's thesis (ADK item 2: N75, N76, rehearsal R0, contract v1) #452'sagent-pack-truth.test.ts;@pccpackage from npm;/skills install;claude mcp addtargets the gateway's remote endpoint.pcc.jsonis in the checked set, so a later sync fromLamaSu/pcc-network-kitthat brings back an old command fails CI.Verification
OnboardLandingPage.test.tsxplus the guard: 19 of 19 pass.well-known-404.test.ts(gateway, covers/start): 8 of 8 pass.LandingPage.tsx: 0 TypeScript syntax diagnostics.install.html's inline script passesnode --check./start: rendered through Fastifyinject, it returns 200 and shows the two-line install.SKILL.mdwith valid frontmatter.GET /api/job-offers/open?capabilityType=manufacturing.fdmreturns 200.POST /mcpinitializereturns 200, buttools/listreturns thePCC_API_BASE_URLerror above.initializealone doesn't prove the server works.{"kernelId": …}in its JSON body, or it answers 400missing_field(job-offers.ts:268-270). The quickstart's example sends it, andPCC-NETWORK.mdsays so.pip download "pcc-node>=0.1.1"finds no distribution, which is why the merge-order note above exists.CLAUDE.mdis floored.llms.txtline.Not in this PR
CLAUDE.md. fix(agent-pack): only true statements, attempt reporting, #427 folded in, the operator's thesis (ADK item 2: N75, N76, rehearsal R0, contract v1) #452 already floors their pip lines and fixes CLAUDE.md's counts. fix(agent-pack): only true statements, attempt reporting, #427 folded in, the operator's thesis (ADK item 2: N75, N76, rehearsal R0, contract v1) #452 uses single quotes,'pcc-node[crypto]>=0.1.1', which break in cmd.exe. Both tests accept either quote style.apps/dashboard/public/install.shinstalls pcc-node from unpinned master (git+…#subdirectory=packages/pcc-node). Everyinstall.htmluser therefore gets master's N66 shell executor until fix(pcc-node): remove the relay executor that ran commands in a shell (N66) #442 merges. Item 1's pin, and then the floor, should cover this script.apps/dashboard/public/whitepaper.mdstill has 3 unflooredpip install pcc-nodelines. It is allowlisted in the test, and a ratchet test fails once that file is fixed, so the entry gets removed.packages/mcp-server/README.md;EXTENDING_PCC.mdanddigital-kernel-marketplace.md;onboard-kit/AGENT_INSTRUCTIONS.md(private@pcc/*imports);install.html's hand-off flow as a whole. It asks for a TypeScript adapter, while the kernel daemon operators run is Python pcc-node. Items 5 and 7 replace it./start, so this PR leaves those lines alone./start's "63 tools" (right today).AGENTS.md'spcc_setup_*workflow names are the stdio server's, which is correct for the config shown there. The hosted/mcpuses the agent package's names (setup_detect, …). They converge when the stdio server generates from the pin (feat(adk): @pcc/adk skeleton with a pinned agent package and a clean external install check (R4 D1) #411 follow-up).Ledger rows: R36, R43.
🤖 Generated with Claude Code