Agent skill · operations · lobehub
agent-work
Use for the Agent Work output registry: registration, deduplication, cards, skill providers, CLI scanners and Work types.
Why this skill is useful
Adds domain-specific knowledge on how to register and manage agent outputs, including unique deduplication and versioning strategies.
What it needs
About 8k tokens when loaded. Last updated 2026-08-07. 81,352 stars on the source repository.
What this skill does
Agent Works A Work is a durable record of something an agent produced or touched — a GitHub PR/issue, a Linear issue, an entity file (pptx/xlsx/docx/pdf), a document, a task. Works render as cards under the assistant message that produced them and accumulate versions across operations, so the same PR edited twice shows one card with history. Two tables (packages/database/src/schemas/work.ts): works — one row per resource. Identity/dedup key: (resourceType, resourceId) within the user/workspace scope and the share scope (see below). currentVersionId soft-references the latest version. workversions — one row per registration event. Dedup: unique (workId, toolCallId), so a retried registration with the same real tool call id is a no-op. Versions carry provenance (source message, producing tool) and operation-level cumulativeCost / cumulativeUsage. Type registry packages/database/src/models/work/registry.ts is the single registry of Work types (document / external / file / task): WORKTYPEADAPTERS is satisfies Record<WorkType, WorkTypeAdapter>, so a type added to @lobechat/types without an adapter is a compile error. Read-path compatibility gate: OPTINWORKTYPES (currently {'file'}) hides newer types from clients that did not opt in (includeFileWorks). Released Electron clients lag by weeks and crash on unknown type descriptors (descriptor.getIcon on undefined), so a request without the opt-in receives exactly the pre-file set. Any NEW Work type must ship behind the same kind of opt-in. The gate has two kinds of emission points, and both must honor the client's declaration: Pulled reads (message.getMessages, work. lists, shareChat.getMessages): the client service passes includeFileWorks: true on the request. …
How to use it
Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:
@skills lobehub/agent-work