agentleFS
openbkn-aiopenbkn-ai/bkn-sdk/skills/openbkn/references/skill.md

references

Skill26 starsChanged 4 months agoApache-2.0View on GitHub

Without it, reads hit the published release; with it, the draft (current, possibly unpublished) version. They differ whenever a skill has been edited but not republished, so pick deliberately. An unpublished skill answers 404 skill not found without --draft. Permissions differ too: draft reads want view/modify, published reads want execute/public_access/view. content/read-file return JSON holding a pre-signed object-store URL whose host (minio.…svc.cluster.local) only resolves inside the cluster — useless from a laptop. --raw writes the file's own bytes to stdout instead,…

8 other projects use a version of this.

Adopted by

Most recently taken up by

The file

We split this skill into the rules it gives an agent

1 rule. 0 are common, 0 are distinctive, and 1 is very specific to this project.

  • 0

    Common

    Most of the 6 edited versions we read keep these.

  • 0

    Distinctive

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Check mocked in the response: true means the sandbox stubbed the run and the skill never executed.

    line 54

“Common” is measured: kept by at least 6 in 10 of the 6 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
skill.md

skill — registry / market / lifecycle

CommandNotes
list / market / get <id> / market-get <id>Browse registry + market. Filters: --name --category --create-user --sort-by create_time|update_time|name --sort-order asc|desc --limit n(1–100,默认 30) --page n --all; list also takes --status unpublish|published|offline|editing (the market is published-only, so it has none).
names <id...>Resolve ids → names in one call; unknown ids are skipped, not an error.
content <id> [--raw] [--draft] / read-file <id> <rel-path> [--raw] [--draft] / history <id>Progressive read + versions.
files <id> [path] [--tree] [--draft]File listing. No path = root; a directory path = its direct children; --tree = whole hierarchy under path (or the whole skill when path is omitted).
execute <id> --entry '<shell>' [--timeout <s>] [--raw] [--exit-code]Run the skill in the platform sandbox. Omit --timeout to leave the limit to the sandbox (300s by default, 3600s max); the client waits out the sandbox's maximum either way.
set-status <id> <status>published | offline only — the endpoint refuses unpublish / editing, which come from registering and editing.
register <dir> [--source custom|internal] [--category <c>] [--extend-info <json>]Zip a local skill dir → multipart register. SKILL.md must have frontmatter (name/description). --source defaults to custom, matching the backend's own default (default:"custom" validate:"oneof=custom internal"), so the registered result is unchanged from omitting it.
download <id> [out.zip] [--draft] / install <id> [dir]Save archive / download + unzip.
update-metadata <id> --body <json> / update-package <id> <dir>Replace metadata / replace package (zip). Metadata is a full overwrite: name, description, category are required; source is custom|internal; extend_info is an object. The CLI refuses anything else before sending.
republish <id> --version <v> / publish-history <id> --version <v>republish copies a historical version back into the draft and publishes nothing; publish-history publishes that version directly.

--draft — which version you read

Without it, reads hit the published release; with it, the draft (current, possibly unpublished) version. They differ whenever a skill has been edited but not republished, so pick deliberately. An unpublished skill answers 404 skill not found without --draft. Permissions differ too: draft reads want view/modify, published reads want execute/public_access/view.

--raw — file text instead of a link

content/read-file return JSON holding a pre-signed object-store URL whose host (minio.…svc.cluster.local) only resolves inside the cluster — useless from a laptop. --raw writes the file's own bytes to stdout instead, so read-file <id> <path> --raw > file reproduces the file byte for byte. Binary files are refused with a pointer to install, never dumped as mojibake.

--raw and --draft compose. The CLI first asks for the body inline. Draft reads (--draft, the management routes) answer with the body inline; published reads answer with only a URL (verified on 14.103.77.23), so the CLI fetches the archive once per run and serves every later read from it.

Running a skill

openbkn skill execute <id> --entry 'python scripts/generate_page.py --list-styles'
openbkn skill execute <id> --entry 'python scripts/generate_page.py --style brutalist' --raw > page.html
openbkn skill execute <id> --entry 'python check.py' --exit-code    # exit status = sandbox's

The platform uploads the package into a sandbox session and runs --entry from its work dir, so scripts reach bundled files by relative path (styles/brutalist/tokens.json). --raw writes the run's stdout straight through (stderr stays on stderr) so output can be redirected into a file; --exit-code is opt-in, since it changes what the process returns. A sandbox that reports mocked=true exits 125: nothing failed, but nothing ran either, and --exit-code && next-step must not read that as a pass. An exit code the shell cannot represent (>255) becomes 1 rather than truncating to 0.

Check mocked in the response: true means the sandbox stubbed the run and the skill never executed. --raw prints that warning to stderr so it can't contaminate a redirected capture.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.