Skip to content

Releases

Arkiv plugin 0.5.4

Choose a tag to compare

@SantiagoDevRel SantiagoDevRel released this 03 Nov 13:18
6f44f11
  • Import canonical skills 51d22fd0485130d701f2340fe003d71101ad571d (skills#73) for the published SDK 1.0.1-compatible package releases. Refresh package versions, public source references and package-specific peer, format-baseline and lifetime-policy guidance in both host bundles.
  • Retain SDK reference 1.0.1, compatibility >=1.0.0 <2 and the Mumbai MCP connection. The bundled guidance update is separate from the hosted MCP release.

Known limitation through November 10

The byte-preserved canonical arkiv-mcp skill describes General as the plugin default. This release selects the ETHGlobal Mumbai event profile: read server_status and confirm mumbai before event work. Returning to General needs a later release.

🤖 Generated with Claude Code

Arkiv plugin 0.5.3

Choose a tag to compare

@SantiagoDevRel SantiagoDevRel released this 03 Nov 05:07
2345caa
  • Import canonical skills from c092c4c0b7c71e9e724d57ecba35637e90a02d7e (Arkiv-Network/skills#72) into both the Claude Code and Codex packages, byte-identical to the source. The skills now document @arkiv-network/sdk 1.0.1: ExpirationTime.max() and MAX_LIFETIME (counted from the landing block), InvalidExpiryError before sending when an expiry is over the maximum, the SDK's own gas headroom when gas is omitted, and EntityMutationError for out-of-gas reverts. Current source citations point to 1.0.1; the few 1.0.0 links that remain describe 1.0.0-only behavior and say so.
  • Plugin metadata: sdkVersion (reference metadata) is now 1.0.1; the compatibility range stays >=1.0.0 <2, so projects on 1.0.0 remain supported.
  • A new guard fails on current-guidance SDK 1.0.0 installs, claims or source links in plugin-owned files.
  • No other change: both packages still connect to https://mcp.arkiv.network/mumbai; hooks, commands and write-safety rules are unchanged.

Known limitation through November 10

The byte-preserved canonical arkiv-mcp skill describes General as the plugin default. This release selects the ETHGlobal Mumbai event profile: read server_status and confirm mumbai before event work. Returning to General needs a later release.

🤖 Generated with Claude Code

Arkiv plugin 0.5.2

Choose a tag to compare

@SantiagoDevRel SantiagoDevRel released this 02 Nov 20:20
afd78c4
  • Import canonical skills from 2bbf731d80c7d8ab201f35f3236ffa800e0044d7 (Arkiv-Network/skills#71) into both the Claude Code and Codex packages, byte-identical to the source. The skills now explain the Rabdi log window: eth_getLogs fails with -32603 golemdb segment_range_of(transactions): NotImplemented for blocks with logs more than about 1,000 blocks behind head (Arkiv-Network/arkiv#283). A watcher that falls that far behind stays stuck; stop it, start a new one at head and reconcile current state with a query. The troubleshooting catalog has a row for this error, distinct from the head-only state error.
  • No other change: both packages still connect to https://mcp.arkiv.network/mumbai; hooks, commands and write-safety rules are unchanged.
  • Release-state documentation guard now reads the version from the manifests.

Known limitation through November 10

The byte-preserved canonical arkiv-mcp skill describes General as the plugin default. This release selects the ETHGlobal Mumbai event profile: read server_status and confirm mumbai before event work. Returning to General needs a later release.

🤖 Generated with Claude Code

Arkiv plugin 0.5.1

Choose a tag to compare

@SantiagoDevRel SantiagoDevRel released this 02 Nov 06:18
afe7f2a

Breaking changes before 1.0 use the next minor version.

  • Target SDK >=1.0.0 <2 on Rabdi (chain ID 7794095). Local context hooks classify coherent 1.x installations as compatible and older SDKs as out_of_range. Mismatch, absent, not_installed and insufficient-evidence handling remain independent.
  • Configure both Claude Code and Codex with https://mcp.arkiv.network/mumbai instead of General, intended through November 10, 2026. Confirm the actual Mumbai status and tools before event work; changing back requires a later explicit release.
  • Import canonical skills from 9fcbdc3066563ea05d3973eb1a9c73cecc82f9e3, preserving raw source bytes, licenses and the deprecated-stub exclusion. The canonical MCP skill still describes General; package documentation makes the Mumbai override explicit.
  • Use encryptBytes/decryptBytes with arkiv-encryption >=1.1.0; remove the obsolete API-symbol allowances and canonical reference waiver. Every current file and directory name remains checked, with dated evidence explicitly preserved.
  • Align writes with the merged safety contract: a fresh nonce at latest, current gasPrice via eth_gasPrice under exclusive signer custody, and a fresh unsigned estimate at latest before every new signature (including the single allowed retry); gas >= max(1_000_000 + 400_000 × (N − 1), 2 × estimate) and gas <= half the latest block gas limit. Allow at most one retry only after an authoritative gas-exhausted reverted receipt (gasUsed === gasLimit), never after SDK success or an uncertain submission. The retry requires at least double the previous cap and both fresh gas bounds, with current nonce/fees and authorized spend.
  • Apply the half-block gas check inside canonical executable write helpers before initial sends and retries. Keep the first-write grader explicit about nonce/fee freshness on every signature, with mutation-tested static enforcement.
  • Restore the canonical router prerequisite: load arkiv-security-trust and, when appropriate, arkiv-encryption before storing sensitive data. Preserve the original privacy assertion and SDK hook fact-line text.
  • Refresh short project rules for typed schema columns, indexed filtering and named bytes columns. Preserve read-only, local-only context inspection and fixed host/version attribution.

Known limitation through November 10

The byte-preserved canonical arkiv-mcp skill describes General as the plugin default. This release explicitly selects the ETHGlobal Mumbai event profile. Follow the configured URL and actual-profile discovery sequence: read server_status, confirm mumbai and its event identity, then consult current event sources. The SDK context hook retains its fact-line-only output.

For the separately reviewed return release, node scripts/build-plugin.mjs --mcp-profile general selects the approved General URL in both packages. Follow the November 10 procedure for a new version, regenerated artifacts, checks and isolated installation verification. This release does not switch installed clients automatically.

🤖 Generated with Claude Code

arkiv 0.4.1: refresh bundled skills

Choose a tag to compare

@SantiagoDevRel SantiagoDevRel released this 25 Oct 07:57
526744d

Plugin 0.4.1 refreshes the bundled skills. The connection target (General at https://mcp.arkiv.network/), hooks and header shape are unchanged from 0.4.0.

Changes

  • Bundled skills move to Arkiv-Network/skills@f4875a9 (skills#65). The arkiv-mcp skill now describes the bundled General connection, event profiles as separate URLs the human adds, and the ended Devfolio profile, frozen at /devfolio. Its tool table matches General's live tool and prompt list. No other skill changed.
  • The README and package guides no longer carry the notice about an outdated MCP skill.
  • The attribution header reports arkiv-plugin/0.4.1.

Evidence

  • Linux ARM64: build (no generated changes), check, and three full test-suite runs on the release tree: 98 tests, 96 pass, 0 fail, 2 opt-in native installation tests skipped. A new test fails on the 0.4.0 skill bytes and passes on 0.4.1.
  • Public installation from main in new isolated profiles: Claude 347/347 and Codex 47/47 files match the repository byte for byte; both point to https://mcp.arkiv.network/ and install the refreshed arkiv-mcp skill.

Upgrade

  • Claude Code: claude plugin marketplace update arkiv, then claude plugin update arkiv@arkiv, and restart.
  • Codex CLI: codex plugin marketplace upgrade arkiv, then codex plugin add arkiv@arkiv, and start a new session.

Details: verification scope.

arkiv 0.4.0: General MCP

Choose a tag to compare

@SantiagoDevRel SantiagoDevRel released this 24 Oct 21:52
4a735b9

Plugin 0.4.0 moves the bundled arkiv MCP connection to General at https://mcp.arkiv.network/. The Devfolio event has ended, and General is the profile for building on Arkiv; event profiles are added separately when an event needs one.

Breaking changes

  • The connection moves from https://mcp.arkiv.network/devfolio to https://mcp.arkiv.network/. It keeps the name arkiv.
  • Devfolio-only tools and prompts are not on General: check_schema, check_submission, design_entity_model, prepare_devfolio and pillar_fit. For entity design use the model_entities workflow or, for a PostgreSQL schema, generate_entity_model. To keep working on a Devfolio project, add https://mcp.arkiv.network/devfolio as a second server; the README shows the commands.
  • Devfolio resources (devfolio/*, sdk-devfolio/*, guides/devfolio-current) are served only on /devfolio.
  • verify_entity and verify_tx are available on General.

Other changes

  • Claude Code sends X-Arkiv-Audience: internal only when ARKIV_AUDIENCE=internal is set, for Arkiv's own machines. Default headers are unchanged. Codex CLI sends no audience header (its plugin format accepts only static headers).
  • Bundled skills are unchanged at Arkiv-Network/skills@cd8bb37. Its arkiv-mcp skill still describes the previous event target; check server_status, which reports profile general.

Evidence

  • Linux ARM64: build, check and three full test-suite runs on the release commit, 0 failures. Windows: build, check, strict validation, and the suite with native installation tests (loopback only).
  • Real-host plugin journeys against the General build that went to production: Claude Code 28/28, Codex CLI 25/25.
  • Public installation from main in new isolated profiles: the installed Claude and Codex packages match the repository byte for byte, and both point to https://mcp.arkiv.network/.

Upgrade

  • Claude Code: claude plugin marketplace update arkiv, then claude plugin update arkiv@arkiv, and restart.
  • Codex CLI: codex plugin marketplace upgrade arkiv, then codex plugin add arkiv@arkiv, and start a new session. If Codex has not trusted the Arkiv hook, run /hooks inside Codex CLI.

Full details: README and verification scope.

Arkiv 0.3.1: hardened context hook and import check

Choose a tag to compare

@SantiagoDevRel SantiagoDevRel released this 17 Oct 17:22
2a23695

Plugin 0.3.1 hardens the local SDK context hook and the installed-import check added in 0.3.0. On ordinary projects the agent sees the same SDK context as before.

Fixes

Each fix began as a failing test.

  • Context text is fixed. The hook injects only text made entirely of its own fact lines, whatever answers on the session's local IPC name. Installed versions are measured only up to six digits per part.
  • Import check never echoes unusual imports. It reports unmeasured for any SDK import that is not a plain package subpath with short names. Re-export reads are bounded: each declaration file is read once, at most 128 per check. Canonical skills Arkiv-Network/skills@cd8bb37 (#63).
  • Four edge cases are now handled correctly:
    • A hook request retried after a lost reply still delivers its change.
    • A declaration-only change re-states the declaration count.
    • A workspaces root (a workspaces field, pnpm-workspace.yaml or lerna.json) with no SDK dependency of its own is unmeasured instead of absent.
    • An SDK found above the lockfile's folder is no longer confirmed by that lock.
  • The Codex manifest now carries the shared keywords.

Evidence

  • 88/88 tests on Linux ARM64. 87/88 on Windows, where one Linux-only test is skipped. claude plugin validate --strict passes.
  • Comparison with 0.3.0 on ordinary inputs:
    • 320 comparisons on both hosts, with and without the session process, using six SDK fixtures and eight import-check files.
    • The injected text is identical in all of them, so the October 16 ablation still applies.
  • Public installs of 0.3.1 in isolated Windows profiles match the repository packages exactly: 347 Claude files and 47 Codex files. Both updated from 0.3.0.
  • Native sessions from those installs, run on Claude Code 2.1.302 and Codex CLI 0.163.0:
    • Claude: 54/54 checks. They cover every category, file and directory changes, compaction, /clear, resume, the import check, 8 concurrent sessions, missing Node and the connection header.
    • Codex: 20/20 checks. They cover every category, resume, the untrusted-hook gate, cleanup and the header.
    • Long session: one Claude session ran for 11 minutes, past the 600-second timeout of the asynchronous hook that starts its session process. That process stayed up and delivered a later SDK downgrade correctly.
    • No production traffic: Claude ran with no MCP servers, and Codex used a local mock.

Update

  • Claude Code: claude plugin marketplace update arkiv, then claude plugin update arkiv@arkiv, then restart.
  • Codex CLI: codex plugin marketplace upgrade arkiv, then codex plugin add arkiv@arkiv, then start a new session. If you have not trusted the Arkiv hooks yet, do it once with /hooks.

Arkiv 0.3.0: local SDK context

Choose a tag to compare

@SantiagoDevRel SantiagoDevRel released this 16 Oct 21:44
89c1945

Plugin 0.3.0 adds local SDK context for Claude Code and Codex CLI, plus the canonical installed-import check.

What's new

  • Local SDK context hooks (both hosts). At session start and on later prompts, the plugin reads the workspace's package.json, npm lockfile and installed @arkiv-network/sdk declarations, then tells the agent one category: compatible, out_of_range, not_installed, mismatch or absent. It names the supported range >=0.8.1 <0.9. It never imports project code. It makes no HTTP, TCP or DNS requests and writes no cache or identifiers. Supported on Windows and on Linux with Node 20.8+. macOS stays unmeasured.
  • Codex native manifest. The Codex package now uses .codex-plugin/plugin.json, so Codex loads its hooks. Review and trust them once with /hooks.
  • Canonical skills Arkiv-Network/skills@49c0e06 (#62). In Claude Code, the router's installed-import check runs after Write/Edit on files that import the SDK. For an SDK outside the supported range, the router proposes an explicit upgrade plan instead of adapting newer examples.
  • Skill-usage collection stays disabled.

Evidence

  • Context-only ablation, October 16. Each host ran 73 cases × 3 repetitions per arm in installed-SDK fixture workspaces, graded by a blind Opus 5.5 judge with 3 votes per answer:
    • Claude Code: 218/219 with context vs 211/219 without; 0 pairs worse, 7 better.
    • Codex CLI: 207/219 vs 204/219; 2 pairs worse, 5 better. Neither worse pair is attributable to the context.
  • 78/78 tests on Linux ARM64 and 77/77 on Windows. claude plugin validate --strict passes.
  • Installation was checked in isolated profiles:
    • Fresh public installs match the repository packages: 49 Claude files and 47 Codex files.
    • Updates from 0.2.1 succeed on both hosts.
    • Native sessions from the installed 0.3.0 packages received compatible for a 0.8.1 fixture and out_of_range for a 0.6.8 fixture on both hosts. The MCP was suppressed or mocked, so no production traffic was sent.

Update

  • Claude Code: claude plugin marketplace update arkiv, then claude plugin update arkiv@arkiv, then restart.
  • Codex CLI: codex plugin marketplace upgrade arkiv, then codex plugin add arkiv@arkiv, then start a new session and trust the Arkiv hooks once with /hooks.

Arkiv 0.2.1: anonymous connection attribution

Choose a tag to compare

@SantiagoDevRel SantiagoDevRel released this 14 Oct 11:07
019a690

Adds a shared package-version and host header to the existing Arkiv MCP connection. Claude uses a local fixed-header helper and supports ARKIV_TELEMETRY=off; Codex sends a documented static header. No environment value, installation/session ID, local path, prompt, SDK state or skill-use counter is transmitted by this attribution.

Skills, project rules and context hooks are unchanged. The helper reads no files, performs no network request and adds no agent context. Node 20+ is required for the Claude rules hook and header helper. Existing MCP operation telemetry and hosting logs have their own privacy limits.

Verified: 39 serial tests, generated/import/static checks, strict Claude validation, actual Claude/Codex header connections against a local fixture, and anonymous public branch installation with exact bundle-byte parity in fresh isolated profiles. The required user plugin configurations and Codex config are unchanged; an additional global Claude metadata hash changed during the window and remains unattributed. The companion MCP passes classified preview response comparisons and uploaded-source verification; production promotion follows separately.

New context hooks, a fresh complete hook ablation, production skill-use collection and dashboard panels remain pending. See the README privacy section and the preserved historical qualifications in docs/verification.md.

Arkiv plugin 0.2.0 — Claude Code and Codex CLI

Choose a tag to compare

@SantiagoDevRel SantiagoDevRel released this 13 Oct 21:11
b99f18f

Version 0.2.0 adds a Codex CLI package beside the Claude Code package. Both share the arkiv identity and version, install from this repository and bundle the existing Devfolio (Arkiv: Global Tour Stop) MCP profile at https://mcp.arkiv.network/devfolio. No connection key is required.

Claude Code

New installation:

claude plugin marketplace add Arkiv-Network/claude-plugin
claude plugin install arkiv@arkiv

Update from 0.1.6:

claude plugin marketplace update arkiv
claude plugin update arkiv@arkiv

Restart Claude Code. Confirm claude plugin list shows arkiv@arkiv enabled at 0.2.0, then run the README check prompt: a successful server_status call should identify devfolio.

Codex CLI

codex plugin marketplace add Arkiv-Network/claude-plugin
codex plugin add arkiv@arkiv

Start a new Codex session and confirm the version with codex plugin list --marketplace arkiv --json. Invoke the router with $arkiv. The Codex package uses streamable-http, has no Claude hooks and does not add project rules unless you ask for them.

Source

Both packages import the same skills as real files from merged skills revision f87c2f5 (Arkiv-Network/skills#57). The source lock binds both destinations by Git blob, SHA-256 and size; license declarations are preserved.

Verification and limits

Public installation from main (b99f18f) passed on Windows in isolated profiles: Claude Code 2.1.296 and Codex CLI 0.162.1 each install 0.2.0, enabled. Both installed caches are byte-identical to plugins/arkiv and plugins/arkiv-codex, and both MCP configurations point to /devfolio. Habitual settings and plugin registries stayed unchanged. This public check opened no session and made no MCP call.

The pre-publication candidate passed build, import, static and serial tests, strict validation, an actual 0.1.6 → 0.2.0 Claude update, native sessions for both clients against a loopback MCP fixture, and fresh installs on Linux ARM64. Details and retained failures are in the verification scope.

Live MCP connectivity is unverified. Codex desktop, IDE and web, macOS and Linux x86-64 are unverified; native Codex sessions used --no-daemon. The existing Claude evals were not rerun as a new complete ablation, and there is no Codex eval certification.