Skip to content
Agentmart
Submit a tool

arkiv-indexing

Design and verify Arkiv-to-application entity mirrors from native operation logs, with checkpoints, replay, reorganization recovery and Entity Expiration…

Skill by Arkiv-Network

IndexedMIT★ 1
Write a review

Chalk Labs

Need help deploying arkiv-indexing?

Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.

Book a call

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/arkiv-network-arkiv-indexing

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Design and verify Arkiv-to-application entity mirrors from native operation logs, with checkpoints, replay, reorganization recovery and Entity Expiration sweeps. Use for an app or PostgreSQL projection and arkiv-sync compatibility checks. This skill's worked consumer runs Arkiv to app; use the verified arkiv-sync 0.3.0 release for the separate EVM-events-to-Arkiv direction.

Use cases: design

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md and code. Checked Nov 1, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/arkiv-indexing

What's inside

Skill name
arkiv-indexing
Description
Design and verify Arkiv-to-application entity mirrors from native operation logs, with checkpoints, replay, reorganization recovery and Entity Expiration sweeps. Use for an app or PostgreSQL projection and arkiv-sync compatibility checks. This skill's worked consumer runs Arkiv to app; use the verified arkiv-sync 0.3.0 release for the separate EVM-events-to-Arkiv direction.
License
MIT
Metadata
network: tiramisu · verified: 2026-10-08 · arkiv-sdk: >=0.8.1 <0.9
Instructions
104 lines in SKILL.md · view on GitHub

Files (2)

  • SKILL.md
  • checkpoint-mirror.md · references/

SKILL.md (first lines)

# Current-state Arkiv projections

Use SDK 1.0.x on Rabdi for an owned application projection. The SDK reads current entity state and its watcher follows the head; it does not reconstruct historical values. Distinguish a current-state mirror from an archive before choosing a design. Query access does not authorize deleting source entities, dropping user tables or deploying a worker.

## Choose the direction and compatibility

`arkiv-sync` is an EVM-events-to-Arkiv ingestion package, not automatically an Arkiv-to-app mirror. Inspect the installed package version, public declarations, peer/dependency range and Rabdi support before integration. Accept only a source-verified SDK 1.0-compatible release; do not widen peers, downgrade the SDK or claim another lane's candidate is published. The package's source identity and its funded acceptance are separate evidence.

Use `arkiv-sync` 1.0.2 for the runtime and `create-arkiv-sync` 1.0.3 for scaffolding. The runtime's SDK peer is `^1.0.0`, verified by the package with 1.0.1; the scaffolder's template pins `arkiv-sync` 1.0.2 and SDK 1.0.1. Scaffolding alone does not start the worker or authorize its verification writes; review the generated project and configure its inputs before running it.

## Project current observations honestly

1. Bind chain ID, genesis/reset identity, schema/index/trust scope and projection generation. A chain ID alone does not distinguish a reset.
2. Bootstrap with a bounded current-state scan. Keep observed blocks; keyset pagination prevents repeats of prior keys but is not an atomic snapshot. For a consistent baseline, coordinate writers and require the same unchanged head across every page, using [backup capture](../arkiv-entity-lifecycle/references/backup-restore.md).
3. Start `watchEntityEvents` as an invalidation signal, then reconcile current state. A live tail at head works; the listener becomes active on its first poll, so startup intervals have gaps. On Rabdi, a watcher more than about 1,000 blocks (~30 min) behind fails on every poll when its range contains an older block with logs. It cannot backfill or catch up across that gap: stop it, recreate the watcher at head and rebuild the projection from a bounded current-state query. Do not split or retry the range. A successful watch call or idle stream is not continuity evidence. See [arkiv#283](https://github.com/Arkiv-Network/arkiv/issues/283).
4. Re-fetch affected keys and re-evaluate schema, creator/publication policy, owner and collection filters. A patch can move an unknown key into scope; an incoming transfer can add it to an owner filter. Known keys need prior-scope invalidation even when a fresh read fails or no longer matches.
5. Periodically reconcile the full bounded scope and sweep expired deadlines. Natural Entity Expiration has no event. Report projection lag, observation blocks and unhealthy/gapped state to readers.
6. Commit rows, source identity, generation and progress atomically in storage owned by this consumer. Do not present an event's old block number as the block of a later head read.

Read [checkpoint-mirror](references/checkpoint-mirror.md) for generation persistence and conservative recovery. Event identities can include block/transaction/log context, but a durable cursor cannot recover values that were never captured. When continuity/reset identity cannot be verified, freeze the old generation and build an isolated current generation; verify it before changing readers. Keep inaccessible historical intervals as explicit gaps.

## Historical requirements

If an application needs exact block-end or mutation-version history, it must capture authenticated state while available or use a separately verified archival service. Event logs alone lack column values. SDK 1.0.x has no historical entity query; do not synthesize a historical implementation by attaching head values to an old checkpoint. Reorganizations, missed operations, disappearance between reads and network resets need explicit product semantics.

Use a signed snapshot/version policy for trusted history, retain canonical identity where independently available, and scope rollback/rebuild to the consumer's owned projection. A timeout or missing old block is not proof of a fork. A number-only legacy checkpoint has no authenticated lineage; preserve it and bootstrap a separate generation rather than inventing an ancestor.

A projection may retain public values after source deletion/expiration. Apply app access/retention policy; neither a namespace nor a shared signer is app-user authorization. Verify reset recovery, skipped schema rows, duplicate events, changed owner, unknown patched-key membership, expiration-only removal and failure before atomic commit. Controlled fixtures do not certify natural chain reorganizations or production persistence.

Sources: [arkiv-sync 1.0.2 release guide](https://unpkg.com/arkiv-sync@1.0.2/README.md), [runtime declarations](https://unpkg.com/arkiv-sync@1.0.2/dist/index.d.ts), [create-arkiv-sync 1.0.3 guide](https://unpkg.com/create-arkiv-sync@1.0.3/README.md), [SDK 1.0.1 source](https://unpkg.com/@arkiv-network/sdk@1.0.1/src/), [SDK 1.0.1 README](https://unpkg.com/@arkiv-network/sdk@1.0.1/README.md). Inspect the installed declarations before adapting executable examples.

From Arkiv-Network/skills, MIT.

More from Arkiv-Network/skills

Signals

Stars
1
Forks
1
Open issues
9
Last commit (this folder)
Oct 12, 2026 (26 days ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from Arkiv-Network

Done for you

Rather not set it up yourself?

Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.

See how we build AI agents →Read the case studies

Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.

launches shipped
50+
launches shipped
media placements
500+
media placements
founders on every account
2
founders on every account

Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block

Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.

Get arkiv-indexing running in your business

Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.

Goes to the Chalk Labs founders, not the newsletter. Privacy

Need help deploying arkiv-indexing?

CallGet help
Cite this page

arkiv-indexing skill. Agent Mart. https://agentmart.dev/skills/arkiv-network-arkiv-indexing (last updated 2026-10-24)