← AltoDocsCONTENT HISTORY

Update to AltoDocs

Snapshot Oct 26, 2026 · 12:08 UTC · version 1.2.0

Collection source: downloaded plugin package.

WHAT CHANGED

First saved snapshot

No earlier snapshot is available to establish a change.

Save AltoDocs and check future changes in Following.

Up to 10 plugins free · no card required.

Compare saved observations

Download comparison JSON
Full technical diff · 0 changed fields
Full snapshot data
{
  "description": "Organise AltoDocs projects, folders and native files from chat. Use for discovering destinations, creating or copying projects, renaming or moving files, making copies, and recoverable Trash or restore operations.",
  "included_files": [
    {
      "relative_path": "agents/openai.yaml",
      "size_in_bytes": 341
    }
  ],
  "name": "altodocs-workspace",
  "skill_md_contents": "---\nname: altodocs-workspace\ndescription: Organise AltoDocs projects, folders and native files from chat. Use for discovering destinations, creating or copying projects, renaming or moving files, making copies, and recoverable Trash or restore operations.\n---\n\n# Projects, folders and files\n\nUse available AltoDocs tools to carry out the user's requested organisation\nchange. Keep the requested file type and preserve content/history. Do not turn a\nsimple file operation into new content creation or expand access to work around\na denial. Tool availability depends on the host and grant.\n\n## Discovery and project creation\n\nUse `list_projects` and `list_documents` for consented projects/files; follow\n`nextCursor` pagination. Use `get_project` for a project's saved identity/state\nand `get_document_info` for a file's type, folder, content and properties versions.\nAsk if a name resolves to multiple plausible targets. Never guess an ID.\n\nUse `list_workspaces` to choose `organizationId` for `create_project` when the\nuser requests a project. Require an identified/unambiguous organisation, new\nproject/request UUIDs and a meaningful name. The tool needs `projects:create`\nconsent and native organisation editing access. It adds only the newly created\nproject to this connection; it does not grant access to existing projects.\n`duplicate_project` copies a selected project's live files/history/media with\ncreator-only sharing, not its old memberships. Keep a clearly requested copy\ndistinct from the original. Verify the resulting project with `get_project`.\n\nAn older grant may lack project-creation permission. Use the host's native\nreconnection/consent flow when needed; token refresh cannot broaden permissions.\nNever request a password/token in chat or silently grant another project.\n\n## Versioned folder/project changes\n\nFor `rename_project`, `create_folder`, `rename_folder` and `remove_empty_folder`,\nread `get_project` immediately before the write and pass its exact `state` as\n`expectedState`. Use relative slash-separated folder paths without empty, dot\nor parent segments. Folder creation includes parents. A subtree rename must\npreserve descendant file locations; do not recreate files as a workaround.\nRemoving an empty folder must fail if it contains files, including Trash.\n\nRead back the project/folder state. Do not claim a folder operation moved,\ndeleted or copied document contents when it did not.\n\n## File lifecycle\n\nBefore each `rename_document`, `duplicate_document`, `move_document`,\n`trash_document` or `restore_document`, read `get_document_info` and supply both\n`expectedVersion` and `expectedPropertiesVersion`. For a trashed file use\n`includeTrashed: true`; `list_trash` discovers recoverable files.\n\nRenaming and moving retain the file's ID/content/history. Duplication needs a\nnew copy UUID and produces a distinct file; its destination project must be\naccessible. Do not copy sharing or membership. Trash is recoverable, not a\npermanent deletion. Restore retains content and folder. There is no permanent\ndelete, project deletion, membership, billing or sharing administration tool.\nRespect the user's authorised operation; do not clean up additional files.\n\nOn a lost response reuse the exact request UUID and payload. On a version/state\nconflict re-read and reconsider rather than replaying against a newer version.\nHonour Retry-After when rate-limited; preserve the pending request and avoid\ncreating duplicate files/projects as a workaround.\nVerify the returned metadata and read the affected content through its native\nreader when content preservation matters. Return the actual saved URL, including\nthe correct native route for MathCanvas, reports, spreadsheets or CAD.\n\nCreate content through the relevant standalone MathCanvas, engineering report,\nspreadsheet, markup or CAD skill. This workflow organises existing native files;\nit does not import arbitrary host attachments into storage.\n"
}

SHA-256 of public snapshot: 0252883d48bde7ae67fb9743fc0535a6e083c6102fcd576ddb5907952dff5116