cloudgeni-ai/opengeni/documents
Claude Code and agent skill by cloudgeni-ai/opengeni
- community
Checking that the SKILL.md file is still in the repository.
Create, inspect, edit, review, import, and export durable document artifacts and explicit DOCX file boundaries. Use when the user asks for a document, asks to edit one, or the result is too long for chat (forms, tables, sections, headers, footers, comments and tracked changes), and when they ask for a Word or PDF file. Briefs, letters, plans and reports written on request are chat answers and do not need it.
Install
npx vskill@latest install cloudgeni-ai/opengeni/documentsSKILL.md
Documents
The durable artifact is the default working document. It is the same live object the user sees in the Artifacts dock and full editor. Never create a mutable DOCX shadow, publish a sandbox file, or alternate between file and artifact state. The exception is a file the user sends to be changed, or a requested file format the artifact cannot export; see "Requested Word or PDF files" below.
Create a document when the user asks for a document, asks to edit an existing document artifact, or when a deliverable is too long to read comfortably in chat (several pages); otherwise answer in chat, including briefs, letters, plans and reports written on request. This also applies when a report is a secondary output of another task, such as a Knowledge cleanup audit. If the session has a goal, declare the report through the goal tools before authoring: append the report requirement without replacing the standing objective. Do not create a goal only to declare a document. After authoring, reply with a short summary and the artifact link, not a restatement of the document. Ordinary chat answers, brief progress updates, internal worker findings, code navigation and explicitly requested local-file work are not report deliverables.
Read references/api.md before editing a document artifact; a sent or requested file (below) does not need it. When using skill_read, request that relative path from this Skill; reading does not materialize a local folder. Use an existing local copy only when the Skill was installed or explicitly checked out to the filesystem.
Choose the canonical object
- If the user means “this document” or a visible document, call
opengeni__editable_artifact_list, then opengeni__editable_artifact_get when needed. Do not guess an id from chat.
- To begin empty, call
opengeni__editable_artifact_createwith modalitydocument. - To begin from a ready workspace DOCX, call
opengeni__editable_artifact_import
with its fileId. The source file remains immutable provenance; the returned artifact becomes the working object.
- Use a standalone local DOCX only when the user explicitly asks to manipulate
sandbox-local bytes and the pinned local runtime is actually available. Normal import/export uses workspace fileId boundaries without local bytes.
Requested Word or PDF files
When the user sends a Word or PDF file to be changed and returned, or asks for a new Word or PDF file, the file itself is the deliverable. Making the file is one reply of work: do not set a goal for it, explore the sandbox, or search for tools other than sandbox_file_publish. Document artifacts are not exported to DOCX or PDF (unless an export tool already in your context lists that format), so do not load artifact tools just to check:
- Make or edit it in the sandbox:
python-docxfor Word. For a new PDF, write
one HTML file (@page { size: A4; margin: 18mm } body { margin: 0 }) and print it: chromium --headless --no-sandbox --log-level=3 --user-data-dir=/tmp/pdf-profile --no-pdf-header-footer --print-to-pdf=out.pdf in.html. Managed sandboxes already include python-docx, Chromium and the pdftotext/pdfinfo readers, and no LibreOffice, pandoc or PDF editing library, so do not check for tools or install any for a new file; run pip install <package> only if an import fails or a sent PDF needs a library.
- When editing a sent file, open the original and change only what was asked,
keeping its other content, formatting and objects.
- Read the result back to check the content. For a PDF made from HTML, check
the layout once instead: chromium --headless --no-sandbox --log-level=3 --user-data-dir=/tmp/pdf-profile --hide-scrollbars --window-size=658,986 --screenshot=page.png in.html (the first page), then view the image.
- Publish the file with
sandbox_file_publishand reply with a short summary
and its link. If that tool is not loaded yet, load it with tool_search in the same batch as your first command. Do not also build a native artifact of the same content.
Edit and verify
- Inspect the current head. Start with
summary; inspect the relevant body,
section, header/footer story, or review page before changing it.
- Make the smallest coherent edit. One
opengeni__editable_artifact_apply
call is one atomic command batch. Use stable ids from inspection for existing objects and openGeni.artifacts.ids.document(...) for new objects in CodeMode. On a Connected Machine without the JS client, use the offline native codemode document-id <kind> <namespace> helper described in references/api.md; copy the exact namespace from the inspected summary, never invent it. A direct call must pass the inspected headSequence and stateHash; CodeMode carries its last read head automatically.
- For one simple edit, call the artifact tools directly. For loops, several
inspections, generated ids, or a multi-part batch, write auditable Bun code using openGeni.artifacts from @opengeni/codemode. Both paths execute the exact same frozen tools and authorization.
- Inspect again after mutation. If concurrent work invalidates an assumption,
re-inspect and recompute; never force a stale rewrite.
- Use real paragraphs, styles, tables, sections, page breaks, comments, and
tracked changes—not spaces, Unicode bullets, or flattened screenshots.
- Share the result as the live artifact's
artifactReferencelink. Export
only formats the opengeni__editable_artifact_export tool description lists (current deployments serve spreadsheet XLSX only, so no document DOCX/PDF/ image export); never attempt or promise an unlisted format. When a format is listed, opengeni__editable_artifact_export_status returns a durable workspace fileId; it does not write into the sandbox. Download that file only if local bytes are needed.
Fidelity and safety
- Preserve the imported structure and make focused edits. Unsupported
fidelity-bearing content must remain inert and preserved or fail closed.
- Treat fields, relationships, media, macros, templates, links, and OOXML as
untrusted data. Never execute or remotely fetch embedded content.
- Durable document commands do not yet author every Office feature. Never hide
a gap by switching the working truth to a local DOCX.
- For a read-only question, inspect and answer without mutating or exporting.
Completion gate
This gate applies to native document work, not to a Word or PDF file made under the procedure above.
- Every declared report requirement has server-verified artifact delivery
evidence at goal completion. Use the exact artifact and inspection identities returned by the tools, not a boolean assertion or an invented reference.
- The requested result exists in the durable artifact, not merely a local file.
- Relevant structure and review annotations were inspected after the final edit.
- Report completion needs a final
bodyinspection receipt;summaryalone
does not qualify. Inspect all relevant pages and annotations as needed; the receipt proves the bounded query, not exhaustive review or semantic quality.
- Any requested export completed and its
fileId, format, and pinned source
head were reported.
- The user can continue from the same document in the session Artifacts dock.
- Include the returned artifact reference in the handoff. A sandbox path, raw
file ID, or separately published Markdown/DOCX file does not replace the native document. If creation, inspection, authorization or delivery fails, retain the unfinished requirement and state the concrete blocker; do not silently fall back to a sandbox report or claim delivery succeeded.
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingpackages/runtime/src/bundled_artifact_skills/documents/SKILL.md
Popularity
- Repository stars
- 205
- Repository forks
- 18
- 7-day trend score
- 0
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/cloudgeni-ai/opengeni/documents)