# Send Codifica to your agent
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
## Fast path
- Download the package from Yavira.
- Extract it into a folder your agent can access.
- Paste one of the prompts below and point your agent at the extracted folder.
## Suggested prompts
### New install

```text
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
```
### Upgrade existing

```text
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "codifica",
    "name": "Codifica",
    "source": "tencent",
    "type": "skill",
    "category": "AI 智能",
    "sourceUrl": "https://clawhub.ai/davidedicillo/codifica",
    "canonicalUrl": "https://clawhub.ai/davidedicillo/codifica",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/codifica",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=codifica",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "SKILL.md"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "slug": "codifica",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T17:10:10.118Z",
      "expiresAt": "2026-05-07T17:10:10.118Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=codifica",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=codifica",
        "contentDisposition": "attachment; filename=\"codifica-1.0.1.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "codifica"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/codifica"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    }
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/codifica",
    "downloadUrl": "https://openagent3.xyz/downloads/codifica",
    "agentUrl": "https://openagent3.xyz/skills/codifica/agent",
    "manifestUrl": "https://openagent3.xyz/skills/codifica/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/codifica/agent.md"
  }
}
```
## Documentation

### Codifica Protocol Agent

You are operating in a repository that uses the Codifica protocol (v0.2) — a file-based protocol for coordinating work between humans and AI agents.

Codifica uses plain text files committed with the code. There is no external service, no API, no database. Git is the audit log.

### Before doing any work

Read codifica.json at the repo root
Read the spec file it references (the spec field — typically codifica-spec.md)
Read ALL state files matching the state field (may be a string, glob, or array)

Do not proceed without reading the spec.

If codifica.json does not exist in the repo, this protocol does not apply — work normally.

### Understanding codifica.json

{
  "protocol": "codifica",
  "version": "0.2",
  "spec": "codifica-spec.md",
  "state": "work.md",
  "assets": "assets/",
  "rules": "strict"
}

Key fields:

state — path to the state file(s). May be "work.md", "work/*.md", or an array like ["work/active.md", "work/done.md"]
rules — may be a string ("strict") or an object with allowed_agents, file_scope, max_concurrent_tasks_per_agent, stale_claim_hours, and custom_types

If rules is an object, check:

allowed_agents — if non-empty and your agent name is not listed, stop and ask a human
file_scope.include / file_scope.exclude — do not modify files outside the allowed scope
max_concurrent_tasks_per_agent — do not claim more tasks than this limit

### Finding work

Scan all state files for tasks where:

state is todo
owner matches your agent name (agent:<your-name>) or is unassigned
All depends_on tasks have state: done

Pick by priority: critical > high > normal > low.

Among equal priority, prefer tasks with no depends_on (leaf tasks first).

### Claiming a task

Before starting work, you MUST claim the task in a single atomic commit:

Set state: in_progress
Set owner: agent:<your-name>
Set claimed_at: <ISO-8601 timestamp>
Add a state_transitions entry recording the claim

Commit all these changes together. If you are working with a remote, push immediately. If the push fails (another agent claimed first), do NOT start work — pull, re-evaluate, and pick a different task.

An unassigned task in in_progress is a protocol violation.

### Reading context before starting

Before starting a task, read its context field:

context.files — read these files for background
context.references — read execution_notes from these prior task IDs
context.constraints — hard rules beyond acceptance criteria
context.notes — free-form guidance from the human

If the task has depends_on, also read the dependency tasks' execution_notes (especially the summary) and artifacts for handoff context.

### Doing the work

Follow the task's acceptance criteria. Respect any context.constraints. Work within the file_scope defined in codifica.json.

### Recording completion

When you complete work, update the task in the state file:

Add an execution_notes entry:
execution_notes:
  - by: agent:<your-name>
    note: |
      Description of what you did.
    summary: "Single line, max 120 chars, scannable answer"
    timestamp: <ISO-8601>
    provenance:
      session_id: <your-session-id-if-available>



Record any files you produced in artifacts:
artifacts:
  - path: src/feature/new-file.ts
    type: code
  - path: assets/TASK-ID/output.csv
    type: csv



Move the task to the appropriate next state:

For build tasks: in_progress → to_be_tested
For other types (test, investigate, followup): in_progress → done (may skip to_be_tested)
Set completed_at: <ISO-8601> when moving to done



Add a state_transitions entry:
state_transitions:
  - from: in_progress
    to: to_be_tested
    by: agent:<your-name>
    reason: "Work completed, ready for testing"
    timestamp: <ISO-8601>



Commit with a message referencing the task ID: FEAT-101: implement login flow

### Rules you MUST follow

Pull before reading state files. Pull before writing changes.
Claim tasks with a single commit before starting work.
If your claim push fails, do not start — pick a different task.
Never edit human_review sections.
Never delete or modify files in assets/.
Only the task owner may move a task from to_be_tested to done.
Never move tasks to blocked or rejected — only humans may do this.
Never reclaim stale tasks from other agents — only humans may reclaim.
Do not start tasks with unmet depends_on.
Include a summary (single line, max 120 chars) on your closing execution note.
Record artifacts produced by your work.
Set completed_at when moving a task to done.

### Requesting a block

If you discover a genuine blocker (missing dependency, failing test, ambiguous requirement):

Add a note to execution_notes explaining the blocker and recommending the task be blocked
Do NOT move the task to blocked yourself — only humans may do this

### Answering questions about work

When asked about what work has been done (by you or other agents):

Scan state files for tasks matching the query (by owner, state, labels, completed_at)
Read the summary field on closing execution_notes for quick answers
Drill into full note text and artifacts when more detail is needed
Use completed_at and labels to filter by time and domain

This is the structured alternative to reading chat transcripts.

### Conflicts

If your push fails due to a Git conflict:

Pull the latest state
Re-evaluate whether your changes still apply
Retry or yield to human resolution

Conflicts on the same task should be escalated to a human.

### Task states reference

todo → in_progress → to_be_tested → done
         ↓                            ↑
       blocked ──→ todo ──────────────┘
         ↓
       rejected ──→ todo (human-only reopen)

Only humans may move tasks to blocked or rejected.
Only humans may reopen tasks from rejected.
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: davidedicillo
- Version: 1.0.1
## Source health
- Status: healthy
- Item download looks usable.
- Yavira can redirect you to the upstream package for this item.
- Health scope: item
- Reason: direct_download_ok
- Checked at: 2026-04-30T17:10:10.118Z
- Expires at: 2026-05-07T17:10:10.118Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/codifica)
- [Send to Agent page](https://openagent3.xyz/skills/codifica/agent)
- [JSON manifest](https://openagent3.xyz/skills/codifica/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/codifica/agent.md)
- [Download page](https://openagent3.xyz/downloads/codifica)