Skip to content
Agentmart
Submit a tool

agent-run-data-collection

Use when collecting NPA agent work for fine-tuning or evaluation so every goal-level episode emits a sanitized, outcome-linked trajectory to an append-only S3…

Skill by nebius

IndexedApache-2.0★ 60
Write a review

Chalk Labs

Need help deploying agent-run-data-collection?

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/nebius-agent-run-data-collection

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

Use when collecting NPA agent work for fine-tuning or evaluation so every goal-level episode emits a sanitized, outcome-linked trajectory to an append-only S3 dataset in an operator-specified Nebius tenant and bucket.

Use cases: cloud, data, agent-building

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. Checked Oct 25, 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/agent-run-data-collection

What's inside

Skill name
agent-run-data-collection
Description
Use when collecting NPA agent work for fine-tuning or evaluation so every goal-level episode emits a sanitized, outcome-linked trajectory to an append-only S3 dataset in an operator-specified Nebius tenant and bucket.
License
Apache-2.0
Instructions
157 lines in SKILL.md · view on GitHub

Files (2)

  • SKILL.md
  • trajectory-schema.md · references/

SKILL.md (first lines)

# Agent Run Data Collection

Collect complete, replayable agent trajectories without making telemetry a new
source of fabricated success or lost operator work.

## Required runtime configuration

Resolve these from owner-only runtime configuration; never commit their values:

- `NPA_AGENT_DATASET_TENANT_ID`: exact tenant that owns the destination.
- `NPA_AGENT_DATASET_URI`: exact `s3://<bucket>/<prefix>` dataset root.
- Existing NPA S3 endpoint and credentials for that bucket. Do not copy secrets
  into a trajectory, command line, workflow spec, log, or skill file.

Before enabling collection, verify the active agent deployment reports the same
tenant and that the destination bucket is a writable resource in that tenant.
Pass the verified active tenant and authorized dataset bucket to the emitter;
empty identity arguments fail closed. S3 access alone does not establish bucket
ownership: retain the provider ownership and deployment identity proof privately.
Tenant-wide discovery alone does not authorize cross-project writes. Do not
create a bucket, grant IAM, or change tenant/project configuration unless the
operator separately requests it.

## Collection hierarchy and episode boundary

Use three levels:

- **Session:** the whole conversation or operator work period.
- **Episode:** one accepted goal pursued until objective success, failure,
  refusal, cancellation, or an explicit handoff. Follow-up messages that refine
  the same unfinished goal stay in the episode; a materially new goal starts a
  new episode.
- **Event:** each prompt, plan, model decision, tool call, observation,
  confirmation, retry, correction, or final response inside an episode.

The episode is the dataset row. Assign its id when the goal is accepted and
finalize exactly one `npa.agent.trajectory.v1` record at the terminal boundary.
Link it to its parent session and include all nested events; do not create a
separate dataset row for every chat turn or tool call.

## Preamble integration

Link the skill explicitly from the agent preamble. Use this canonical line:

> For every goal-level episode, load and follow `$agent-run-data-collection` at `skills/atomic/agent-run-data-collection/SKILL.md`; record the episode from goal acceptance through success, failure, refusal, cancellation, or handoff as one sanitized trajectory containing all nested events, linked to its parent session and stored using `NPA_AGENT_DATASET_TENANT_ID` and `NPA_AGENT_DATASET_URI`.

The preamble selects the skill; the runtime emitter still must be implemented
and configured. Do not claim collection is active merely because this sentence
is present.

## Write contract

Write a new immutable object for every episode:

```text
<dataset-root>/episodes/<yyyy>/<mm>/<dd>/<episode-id>-<content-sha256>.json
```

Never append by rewriting one shared JSONL object: concurrent S3 writers lose
rows. Retrying the same finalized payload must resolve to the same object key;
different payloads for one episode id remain visible and must be treated as a data
quality conflict rather than overwritten. A sanitized correction does not
supersede an existing immutable claim: retain it pending and exclude the whole
conflicted episode from training until explicit data-quality reconciliation. A
delivery receipt proves byte delivery, not privacy or training eligibility.

Freeze the canonical raw record once with `collection.status=pending`. Its bytes
and content hash never change during delivery or retry. After exact S3
read-after-write verification, the runtime publishes a separate immutable
`npa.agent.trajectory-receipt.v1` delivery receipt and verifies that receipt too.
Only then may the emitter return `collected`. The pending status inside an
immutable raw record describes its state at finalization; consumers use its
verified receipt to establish delivery. A conditional episode claim identifies
divergent payloads for the same episode as a conflict while preserving both raw
objects. Do not retry without conditional-write support.

If the S3 write fails, persist the same finalized record to an owner-only local
outbox and mark collection `pending`. Never report the record as collected until
a read-after-write check confirms the object hash. Do not fail or repeat an
otherwise completed GPU or destructive operation merely because telemetry
failed. Retry pending records at the start of the next episode or through an
explicit flush.

The private outbox envelope binds each frozen record to the original tenant,
bucket, and prefix using a destination digest and includes a digest of the exact
payload bytes. Flush verifies that binding and both content digests before any
write, never rewrites the tenant, and retains mismatches or conflicts for
explicit reconciliation. Legacy unbound outbox records require reconciliation;
never silently redirect them to the current destination.

## Record contents

Read [references/trajectory-schema.md](references/trajectory-schema.md) before
implementing or changing the emitter. Preserve:

- sanitized request and relevant initial state;
- ordered plans, tool calls, arguments, observations, retries, and confirmations;
- objective outcome evidence, produced artifact URIs, and operator corrections;
- grounded/model routing, model name, token usage, latency, and agent/tool versions;
- tenant scope, dataset URI role, timestamps, redaction status, and collection status.

Use live workflow status, exit codes, validation reports, tests, and artifact
existence as outcome evidence. The agent's own final sentence is not proof of
success. Store operator corrections as explicit preference pairs when both the
rejected and corrected actions are available.

## Privacy and integrity

Redact before serialization and again before upload. Remove credentials,
authorization headers, environment dumps, private keys, signed URLs, raw image
data, and secret-shaped values. Replace concrete infrastructure identifiers in
free text with typed references; retain the configured tenant id only in the
access-controlled scope field needed to prove routing. Keep raw and curated
datasets separate, and never train on evaluation or held-out runs.

The runtime removes whole private-key blocks, credential fields/environment
payloads, data URIs, private URI paths, concrete resource IDs and addresses,
including identifiers used as mapping keys. Redact the configured dataset URI
and its nonempty prefix even when the prefix appears alone as a directory name

From nebius/nebius-physical-ai, Apache-2.0.

More from nebius/nebius-physical-ai

Signals

Stars
60
Forks
19
Open issues
10
Last commit (this folder)
Sep 6, 2026 (2 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
Apache-2.0
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from nebius

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 agent-run-data-collection 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 agent-run-data-collection?

CallGet help
Cite this page

agent-run-data-collection skill. Agent Mart. https://agentmart.dev/skills/nebius-agent-run-data-collection (last updated 2026-10-24)