Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add oaustegard/claude-skills --skill making-tinyoffice-linksgit clone --depth 1 https://github.com/oaustegard/claude-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/oaustegard/claude-skills/making-tinyoffice-links)<a href="https://agentmods.dev/skills/oaustegard/claude-skills/making-tinyoffice-links"><img src="https://agentmods.dev/badge/skills/oaustegard/claude-skills/making-tinyoffice-links/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/oaustegard/claude-skills/making-tinyoffice-links"><img src="https://agentmods.dev/badge/skills/oaustegard/claude-skills/making-tinyoffice-links.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00132 | $0.02204 |
| Opus 5.5 | $0.00053 | $0.00882 |
| Sonnet 5.5 | $0.00026 | $0.00441 |
| Haiku 4.5 | $0.00013 | $0.00220 |
Grade A, and why
making-tinyoffice-links scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 86 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Making Tiny Little Office links
Tiny Little Office (tinylittleoffice.com) keeps a whole document in its URL fragment, after the #, which browsers never send to a server. You write the document as TLO text (Markdown plus a few additions), percent-encode it into a link and hand the link over. Whoever opens it gets an editor on their own copy, and the address bar updates after each edit to hold the new version.
Procedure
- Pick the app from the table below. Read only that app's reference file. It holds the shapes the app reads and one or two worked examples.
- Write the TLO to a file in your scratchpad. Copy an example from the reference and change it rather than starting from nothing.
- Build the link with the script, which packs the text the way the site does and runs the offline lint:
It prints the URL on stdout, and findings and length warnings on stderr.python3 scripts/tlo.py link deck talk.tlo --title "My talk" --by "Muninn" - Fix every finding and rebuild.
python3 scripts/tlo.py read <url>gives back the text any link holds, packed or plain, so you can edit a link you were sent. It also reads links a chat client mangled (percent-encoded, a quote glued to the end);tlo.py repair <url>prints the clean link. - Deliver. If the link is under 2,000 characters, give it as a Markdown link with a plain description. If it is longer, put the bare URL alone in a fenced code block. Chat renderers and some apps break or truncate long links, and the code block keeps it whole for copying. Put the link on its own line: Webex, for one, pulls a following quote or bracket into the link. Say that the link is the document: an edit produces a new link, and anyone holding the link can read it.
The script makes the packed form the site itself shares: #/v1/<app>/<flag><payload>, the TLO deflated against TLO's frozen word dictionary, base64url with - for 62 and a + every 300 characters so messaging apps don't break it. The site itself writes ~ for 62 and reads - as well. This script writes - because chat clients such as Webex percent-encode ~ (sometimes twice, %257E) and the site does not decode that, so the link opens empty. --tilde reproduces the site's own output. It runs 35–50% shorter than the readable form. --title and --by go into the document's head. --plain gives the readable /<app>/#title=…&doc=… form instead, which the site also opens and packs on arrival.
What ships with it
15 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- CHANGELOG.md 519 B
- references/anim.md 1.4 KB
- references/api.md 8.9 KB
- references/cal.md 2.5 KB
- references/calc.md 1.0 KB
- references/deck.md 3.3 KB
- references/diagram.md 3.0 KB
- references/draw.md 1.9 KB
- references/editors.md 7.3 KB
- references/outline.md 1.8 KB
- references/sheet.md 2.8 KB
- references/trip.md 1.2 KB
- references/write.md 1.4 KB
- scripts/tlo_dictionary.txt 1.5 KB
- scripts/tlo.py 13 KB runs code
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- yesterday Changed 15e49b772b07
- 2d ago First seen · 86 lines · 132 tokens per session scan A 7ca57ba608ba
making-tinyoffice-links is a skill published in the GitHub repository oaustegard/claude-skills (153 stars, last pushed yesterday), licensed MIT. It adds 132 tokens to every session and 2,204 once invoked, about $0.0005 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-10-15.
Other skills, from other repositories
claude-students
Transforma una carpeta cruda de material de un parcial universitario (PDFs, DOC/DOCX, PPT, audios .ogg de WhatsApp, capturas) en un material de estudio polished y completo — HTML SOTA autocontenido + paquete de artefactos de NotebookLM (podcast en español, infografía, guía de estudio, briefing doc, mind map, quiz…
pydicom
Reads, inspects, writes, transforms, and preflights local DICOM datasets and pixel data. Applies to DICOM metadata, transfer syntaxes, compression plugins, frames, private elements, JSON, and bounded de-identification review.
treatment-plans
Formats and structurally validates local treatment-plan documentation after clinical decisions have already been supplied and verified by authorized licensed professionals. Use for source traceability, clinician-authored intervention records, goals and checkpoints, shared-decision records, reconciliation handoffs, and…
venue-templates
Prepares journal manuscripts, conference papers, research posters, and grant documents using venue-specific formatting guidance and bundled LaTeX scaffolds. Supports selecting an official template, checking current page or anonymity rules, adapting academic writing to a venue, or inspecting a submission PDF.
baoyu-youtube-transcript
A tool for downloading the written captions, subtitles, chapter information, speaker labels, and cover image from a YouTube video using its URL or ID.
sync-submission
Use when building, auditing or freezing a journal submission package from the canonical manuscript. Detects drift between the source and the per-journal submission copy, builds byte-preserving packages with manifests, and records current, stale or frozen status.