{"id":56078,"plugin_id":"plugin_asdk_app_6adb6d8e53ac8191ad45de7b03e0abd1","kind":"skill","collection_source":"plugin_package","comparison_source":null,"observed_at":"2026-10-26T18:06:32.608Z","digest":"394c7d8b07aacc6b36e04c9ae8bb17685e47fccffb355b8a369da4c7944b5996","against":null,"payload":{"description":"Create a Wordsmith repository, organise it into folders, add documents to it so they become searchable, and remove a document. Use when the user asks to file, store or organise contracts and other documents in Wordsmith, or to set up a repository for a matter or contract type.","included_files":[],"name":"file-into-repository","skill_md_contents":"---\nname: file-into-repository\ndescription: Create a Wordsmith repository, organise it into folders, add documents to it so they become searchable, and remove a document. Use when the user asks to file, store or organise contracts and other documents in Wordsmith, or to set up a repository for a matter or contract type.\n---\n\n# Filing documents into a Wordsmith repository\n\nA repository is a searchable collection of an organisation's documents in Wordsmith, such as executed\ncontracts or precedents. Wordsmith's `manage_repository` tool creates repositories and folders and adds and\nremoves documents. Wordsmith's `search_knowledge` tool then searches what is filed.\n\n## 1. Find or create the repository\n\n- **An existing one:** call `find_resources` with `kind=\"repository\"` and a `query`. `get_resource` with\n  `kind=\"repository\"` and `include=[\"folders\"]` or `include=[\"documents\"]` lists its contents.\n- **A new one:** call `manage_repository` with `action=\"create\"`, a `name` and optionally a `description`.\n  It returns the `repository_id`.\n\nTo organise documents, call `manage_repository` with `action=\"create_folder\"`, the `repository_id`, a\n`name`, and a `parent_id` for a folder inside another folder.\n\n## 2. Get the documents into Wordsmith\n\nEach document needs a Wordsmith file id. Call `add_file` for an attachment, a public https link or text.\nFor a file on the user's machine, call `create_file_upload`, run its `curl_command`, then call\n`complete_file_upload`.\n\n## 3. Add them to the repository\n\nCall `manage_repository` with `action=\"add_files\"`, the `repository_id`, up to 100 `file_ids`, and an\noptional `folder_id`. Each file moves into the repository and becomes a searchable document.\n\nIndexing runs in the background. If the result has an `operation_id`, call `get_operation` until the\n`repository_indexing` operation finishes. The documents are searchable after that.\n\n## 4. Search what is filed\n\nCall `search_knowledge` with a `query` and the `repository_ids` to search. Each passage it returns carries\nthe `document_id`, the `file_id` and a relevance score. `read_file` with the `file_id` and\n`include=[\"text\"]` returns the document's text a page at a time.\n\n## Removing a document\n\n`manage_repository` with `action=\"remove_document\"` takes the repository's `document_id`, not the\n`file_id`, and deletes both the document and its file. This tool cannot delete a whole\nrepository.\n\n## Example\n\nA user attaches three signed supply agreements and asks to file them under a new \"Supply agreements\"\nrepository, in a \"2026\" folder:\n\n1. `manage_repository(action=\"create\", name=\"Supply agreements\")` returns `repo_1`.\n2. `manage_repository(action=\"create_folder\", repository_id=\"repo_1\", name=\"2026\")` returns `fld_2`.\n3. `add_file` for each attachment returns `f_a`, `f_b` and `f_c`.\n4. `manage_repository(action=\"add_files\", repository_id=\"repo_1\", folder_id=\"fld_2\", file_ids=[\"f_a\", \"f_b\", \"f_c\"])`\n   returns an `operation_id`; `get_operation` reports when indexing is done.\n"},"changes":[],"summary":"First saved snapshot. No earlier version is available for comparison.","summary_kind":"deterministic","summary_metadata":{}}