Arkiv skills, MCP source discovery, and project rules for the Web3 database, packaged separately for Claude Code and Codex CLI with shared identity arkiv. The plugin uses the existing Devfolio (Arkiv: Global Tour Stop) MCP profile at mcp.arkiv.network/devfolio. No connection key is required. It does not install the SDK, fund or connect a wallet, sign transactions, or create another backend.
Version 0.3.1 hardens the local SDK context hook added in 0.3.0: the hook injects only its own fixed fact lines, the installed-import check never quotes unusual import text back to the agent, and four edge cases are classified correctly (a retried hook request, a declaration-only change, a workspaces root and an SDK installed above the lockfile's folder). 0.3.0 added the hook to both packages and imported updated canonical skills. The hook tells the agent which @arkiv-network/sdk version your project has installed and whether it is in the supported range, without running project code or making network requests. Both packages install from this repository's public default branch.
Claude package: plugins/arkiv, version 0.3.1. Tested on Windows with Claude Code 2.1.299; Node.js 20 or newer must be on PATH to run the project-rules hook and emit the connection header. With Node absent, the MCP still connects without that header on tested Claude Code 2.1.300; automatic project rules are unavailable. Install from the public default branch:
claude plugin marketplace add Arkiv-Network/claude-plugin
claude plugin install arkiv@arkivRestart Claude Code or open a new session after installing the plugin, then continue to Step 2.
The defaults install for your user account. For one project, add --scope project to both commands; --scope local keeps the declaration in that project's local settings. Read the official scope guide. Restart Claude Code after installing, then start an Arkiv task with /arkiv:arkiv. Skills are namespaced as arkiv:<skill>.
In an existing Claude Code session, the equivalent commands are:
/plugin marketplace add Arkiv-Network/claude-plugin
/plugin install arkiv@arkiv
The SessionStart hook adds a short rules block only when the current project's package.json declares @arkiv-network/sdk in a dependency field. It reads that manifest and its bundled rules only; it does not edit your project. Missing, invalid or oversized input produces no rules. If Node is unavailable, Claude Code reports a nonblocking hook error and the skills and MCP remain separate components; install Node and restart before relying on the automatic rules.
When a session starts, and again on later prompts only if something changed, a local hook reads your project's package.json, package-lock.json and the installed @arkiv-network/sdk declaration files. It adds a few lines to the agent's context: the version category (compatible, out_of_range, not_installed, mismatch or absent), the installed version and the plugin-supported range. Missing, unsupported or ambiguous evidence stays unmeasured and adds nothing. Claude Code also refreshes after manifest or lockfile changes, directory changes and compaction.
The hook never imports or runs project code, makes no network requests and writes no files or identifiers. Its per-session state lives in memory of a short-lived local process reached over an OS-local named pipe (Windows) or abstract socket (Linux, Node 20.8+); other platforms leave the context unmeasured. If Node is missing or the hook fails, the session and the MCP connection continue normally. compatible describes package metadata only; it does not certify your application.
claude plugin list
claude plugin details arkivPaste this prompt after restarting:
Use the Arkiv Claude Code plugin. Load the arkiv:arkiv skill and name the skill it recommends for building a typed query. Then call the Arkiv MCP server_status tool and report the profile it returns; the expected profile is devfolio (Arkiv: Global Tour Stop). Report CONNECTED only after a successful MCP tool call confirms profile devfolio; otherwise report NOT CONNECTED and what to fix. Do not answer from memory, install anything or sign transactions. Do not connect wallets, submit feedback, mutate files or data, add connections or switch profiles.
The plugin already includes the Devfolio connection, Arkiv building guidance and the Global Tour Stop event sources. In the client where you install the plugin, check separately installed Arkiv skills and Devfolio connections and resolve duplicates before proceeding. Agents must not remove or switch connections on their own. Read the actual server_status and current sources before trusting event rules.
Codex package: plugins/arkiv-codex, with the native .codex-plugin/plugin.json manifest, mcp.json (streamable-http), the local SDK context hook and real skills imported from the same fixed revision as Claude. It has no Claude rules hook. The Windows CLI target is 0.162.1; see verification scope for evidence and limits. Desktop, web and IDE behavior require their own checks.
Step 1 — run in your terminal:
codex plugin marketplace add Arkiv-Network/claude-plugin
codex plugin add arkiv@arkivAlternatively, after adding the marketplace, enter /plugins inside Codex CLI, choose the Arkiv marketplace, inspect Arkiv and install it. This is an action inside Codex, not a shell command. The native command-line installer is plugin add.
Start a new Codex session after installing the plugin, then continue to Step 2.
Step 2 — inspect the installed version in your terminal:
codex plugin list --marketplace arkiv --jsonPaste into the new Codex session:
Use $arkiv from the installed Arkiv plugin to load the router and name the skill it recommends for building a typed query. Then call server_status on the existing bundled Arkiv connection; the expected profile is devfolio (Arkiv: Global Tour Stop). Report CONNECTED only after a successful MCP tool call confirms that profile; otherwise report NOT CONNECTED and the observed problem. Do not answer from memory, install anything or sign transactions. Do not connect wallets, submit feedback, mutate files or data, add connections or switch profiles.
Codex does not run Claude's rules hook. Codex skips plugin hooks until you review and trust them: run /hooks inside Codex CLI and trust the Arkiv context hook. After that, the local SDK context hook described above runs at session start, on prompts when the evidence changed and after compaction (Codex has no file or directory events). Untrusted or failing hooks never block the session. The router carries essential rules even without the SDK. Package-root AGENTS.md documents the package; installation does not inject it into your project's instructions. Only if you explicitly request project rules, append plugins/arkiv-codex/templates/AGENTS.snippet.md to your existing project AGENTS.md, preserving its instructions. Installation does not authorize that edit, SDK installation, wallet access, feedback or transactions.
To pick up a later release, refresh the Git marketplace snapshot with codex plugin marketplace upgrade arkiv, run codex plugin add arkiv@arkiv, confirm the version with the list command above and start a new session. If you have not trusted the Arkiv hooks yet (for example when updating from 0.2.x), run /hooks and trust them. To remove an installation you chose, use codex plugin remove arkiv@arkiv and optionally codex plugin marketplace remove arkiv. Do not remove a consumer's existing resources automatically.
Official formats and client limits: packaging, Claude migration, plugin browser.
The bundled MCP connection sends a shared package version and host label by default: X-Arkiv-Client: arkiv-plugin/<version>; host=claude-code or host=codex. The server retains only closed distribution, published-version and host categories. Initialization names are reduced to a closed client family; raw headers and names are discarded. These are client claims, not proof of installation.
No installation or session IDs, project names, paths, working directories, prompts, local file content, SDK state or skill usage are sent by this attribution. Counts measure request attempts, not users, installations or linked conversions. Hooks make no network requests; the SDK context stays on your machine as agent context. Local skill-usage collection and sharing are not enabled.
In Claude Code, set ARKIV_TELEMETRY=off in your environment before starting a new session to disable the extra package-version and host header. A local Node header helper emits either the fixed package version and Claude host or no attribution header. Other environment values are never transmitted. The helper reads no files, performs no network requests and adds no agent context. Codex sends a static header; this package does not provide an environment-variable opt-out there. Standard MCP initialization names are still reduced to a client family, and normal operation telemetry and hosting logs continue.
The intended event retention is 90 days, with authorised operator access and verification traffic excluded from live reports. Retention enforcement requires operator review. Read the MCP privacy notice for existing telemetry, voluntary feedback and infrastructure limits.
Start with the screen or query you need, then decide what can be public. For example:
I am planning a to-do app on Arkiv. Before writing code, inspect the available SDK version and declarations. Ask me which lists, filters and sort order I need; who may create and update tasks; what is private; how long Arkiv entities should remain queryable; and whether this is a browser wallet or authenticated server app. Do not invent those decisions, install anything or sign transactions.
For an existing application, provide the installed SDK version, a small schema, the expected query result and a sanitized error. Never paste a private key or access credential. The guidance targets SDK >=0.8.1 <0.9 on Tiramisu; it asks for missing local evidence before producing executable SDK calls. Writes additionally require an authorized signer and spending scope.
claude plugin marketplace update arkiv
claude plugin update arkiv@arkivTo update from 0.2.1 or earlier, run both commands above, then restart Claude Code. Confirm claude plugin list shows 0.3.1 and the check prompt returns profile devfolio. The plugin manifest's version identifies the installed release; the skill source receipt identifies its canonical skill revision.
claude plugin uninstall arkiv@arkivIf you chose a project or local scope, use that same scope when uninstalling. Remove the marketplace only if you no longer want it:
claude plugin marketplace remove arkivFrom this repository:
claude --plugin-dir ./plugins/arkivThis loads the plugin for that session. It also connects its hosted MCP during normal use. To test the marketplaces from a checkout, use claude plugin marketplace add ./ or codex plugin marketplace add . in an isolated profile. Maintainer tests must use the isolated, synthetic setup described in AGENTS.md to keep builder telemetry clean.
For standalone skills, keep using Arkiv-Network/skills:
npx skills add Arkiv-Network/skills --skill arkivFor MCP-only use, connect to the Devfolio profile using the Hub MCP guide. That route does not install local skills or project rules.
Skills are authored in Arkiv-Network/skills and imported as real files into both packages from merged revision 49c0e0695d0abc66325aab7e9f3d469ce0b694c5 (Arkiv-Network/skills#62). Both destinations are bound by the shared Git-blob/SHA-256/size lock. Their original bytes, MIT declarations and cross-skill references are preserved; the deprecated compatibility entrypoint is excluded. Do not edit bundled guidance here. Imported skills retain their license declarations; this repository does not declare an overall distribution license.
node scripts/build-plugin.mjs --check
node scripts/check-static.mjs
node --test --test-concurrency=1 tests/*.test.mjs
claude plugin validate --strict .
claude plugin validate --strict plugins/arkivThe repository has no package dependencies. Behavioral evals compare the plugin with a no-plugin baseline using synthetic MCP tools. Static checks, installation, behavior and live MCP health are separate evidence. The controlled project-rule cases do not replace native hook tests. Production MCP tests require confirmed verification classification and operator pacing; otherwise use loopback fixtures.
See AGENTS.md for exact maintenance commands, version rules, required developer inputs and test isolation.
See verification scope for 0.3.1 and earlier acceptance records, qualified native coverage and retained failures. The release notes record public installation. The Hub guide covers both clients.
SDK context and skill-usage preparation documents the context hooks, the installed-import check, host limits and the disabled skill-usage source. The October 16 context-only ablation is the 0.3.0 release gate, with per-skill trigger, negative and outcome results.