Skip to content

feat(fileshare): the skill catches up with the tool - #75

Merged
sauterbe merged 1 commit into
mainfrom
feat/fileshare-skill-read-find-update
Aug 12, 2026
Merged

feat(fileshare): the skill catches up with the tool#75
sauterbe merged 1 commit into
mainfrom
feat/fileshare-skill-read-find-update

Conversation

@sauterbe

Copy link
Copy Markdown
Contributor

Why

xentral_fileshare gained three actions in xentral/agent-os (#150 windowed read + find, #151 update). The skill still listed all three under "what this tool cannot do" — which is worse than silence: an agent that believes a large file is unreadable reports failure to the user instead of windowing it.

What changed

  • Actions: read documents offset/limit and what the window response reports; find and update are added.
  • "A big file: window it, search it, or profile it" replaces "when read will not give you the file". Three routes — window when you know where to look, find when you don't, import_analyze when a figure is wanted (still the only honest source for a count, even on a small table) — plus the duty to pass on "more follows" and "stopped at max_hits" rather than papering over them. Only a binary over the cap has no route left.
  • New "Overwriting" section, mirroring what the server enforces: your own uploads are yours to correct; a user's file means uploading a new one beside it unless they asked for that file by name (confirmed=true); an inbound email attachment never is. Plus the rules that aren't about the file — an overwrite is its own step, anchors must be unique, and you cannot replace the body of a file you could not read whole.
  • Reference: two new recipes (locate something in a file too big to read; fix one line) and four new pitfalls, each one a way to be confidently wrong that the new actions make possible.
  • Frontmatter description covers the new capabilities, so the capability catalogue and the plugin describe the tool correctly.

The remaining limits table is now short and true: no folders, no versions, no Office extraction, no binary edit.

Verification

  • Assembled through the real backend loader: 14 566 chars, frontmatter stripped, reference folded in, and the new material present (offset, find, confirmed=true, the inbox rule, the new recipe, the "stopped at" duty).
  • python scripts/validate_library.pyOK: 337 library items valid against their schemas.
  • SKILL.md 182 lines, reference 103 — both well inside the 500-line guideline.

After merge

Tag, then make bump-library in the backend. The two agent-os PRs can merge independently; until the bump, the vendored skill understates the tool (it does not misstate it in a way that breaks anything — it just tells the agent to give up early, which is the bug being fixed here).

`xentral_fileshare` grew three actions (xentral/agent-os#150, #151): a windowed
`read` (offset/limit over lines, streamed), `find` (substring/regex with context and
capped hits), and `update` (whole-body or an anchored patch). The skill still listed
all three under "what this tool cannot do", which is worse than saying nothing: an
agent that believes a file is unreadable reports failure instead of windowing it.

- Actions section covers the new parameters and what each response reports.
- "A big file" replaces "when read will not give you the file": three routes —
  window when you know where to look, find when you do not, import_analyze when a
  *figure* is wanted — plus the duty to pass on "more follows" and "stopped at
  max_hits" instead of papering over them. Only a binary over the cap has no route.
- New "Overwriting" section: what may be overwritten (your own uploads), what needs
  the user to have asked for that file, and that an inbound email attachment never
  is. Plus the rules that are not about the file: an overwrite is its own step,
  anchors are exact, and you cannot replace the body of a file you could not read
  whole.
- Recipes for the two new flows (locate something in a huge file; fix one line), and
  pitfalls for the three new ways to be confidently wrong.

The remaining limits table is now short and true: no folders, no versions, no
Office extraction, no binary edit.
@sauterbe
sauterbe merged commit 4663e1b into main Aug 12, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant