← Files InkARCHIVED FILE
.codex-plugin/plugin.json
6.18 KB · Nov 9, 2026 · 18:08 UTC
{
"name": "ink",
"version": "0.1.5",
"description": "Rewrite supplied text in your own words and a natural voice while preserving meaning.",
"author": {
"name": "Egoist Machines, Inc.",
"email": "support@ego.ist",
"url": "https://ego.ist"
},
"skills": "./skills",
"mcpServers": "./.mcp.json",
"interface": {
"displayName": "Ink",
"shortDescription": "Deslop without losing the plot",
"longDescription": "Ink is a writing tool that rewrites AI drafts into words you would actually use. It deslops stiff, generic writing and keeps your meaning intact.\n\nUse it on emails, cover letters, reports, product updates and LinkedIn posts: paste a draft and ask to rewrite it with Ink. Ink runs its own rewriting model, then checks the result for the names, numbers, dates, quotes, citations and links you wrote, and warns you if one goes missing. Compare shows exactly what changed, so you can copy the result with confidence.\n\nChoose a light, balanced or strong rewrite for work, casual or academic writing. Personal voice profiles are coming soon. PDF and DOCX rewriting is planned.",
"developerName": "Egoist Machines, Inc.",
"category": "Productivity",
"websiteURL": "https://ink.ego.ist",
"supportURL": "https://ink.ego.ist/support",
"privacyPolicyURL": "https://ink.ego.ist/privacy",
"termsOfServiceURL": "https://ink.ego.ist/terms",
"logo": "./assets/logo.svg",
"composerIcon": "./assets/composer-icon.svg",
"capabilities": [
"Rewrite text",
"Review rewrite results",
"Manage rewrite jobs"
],
"defaultPrompt": [
"Rewrite my draft in a natural voice while keeping its meaning.",
"Give my email a light edit, keeping names, numbers and links intact.",
"Rewrite my LinkedIn post and show me what changed."
]
},
"extensions": {
"com.openai": {
"onboardingSkill": "./skills/ink/SKILL.md",
"review": {
"test_cases": {
"positive": [
{
"description": "Account readiness and model",
"prompt": "Check whether my Ink account is ready and which writing model I can use.",
"tools_triggered": "ink_get_status",
"expected_behavior": "Shows readiness, allowance (unlimited for the reviewer account) and the shared Ink model, or relays the Ink setup link. Explains that personal voice profiles are coming soon and never labels shared output as a trained personal voice."
},
{
"description": "Rewrite text",
"prompt": "Rewrite with Ink: I utilize this process in order to work.",
"tools_triggered": "ink_rewrite_text",
"expected_behavior": "Uses the shared Ink model with a fresh UUID idempotency key and preserves meaning. Shows the result in the Ink widget with Copy, Compare and fullscreen. The text includes a Job ID: <uuid> line. Retries reuse the same key and arguments."
},
{
"description": "Retrieve a long rewrite job",
"prompt": "Check my long Ink rewrite job and show the result when it is finished.",
"tools_triggered": "ink_get_job, ink_get_result",
"expected_behavior": "Uses the Job ID from the rewrite to check the owned job and retrieve its result when finished. Every job-related tool result includes a Job ID: <uuid> line in its text. The widget shows a status line while the job is queued or the model is starting, polls by itself and fills in when done, with word usage and preservation warnings. Reports the actual stage without inventing a completion percentage. Does not claim success while pending or access another account's jobs."
},
{
"description": "Cancel a job",
"prompt": "Cancel my current Ink rewrite job.",
"tools_triggered": "ink_cancel_job",
"expected_behavior": "Uses the Job ID from the rewrite to request cancellation and reports the actual state and whether cancellation is pending. The result text includes a Job ID: <uuid> line. Repeating cancellation is safe."
},
{
"description": "Give and clear feedback from the widget",
"prompt": "In the Ink widget, I click thumbs down, pick a reason and send the feedback, then click Clear feedback.",
"tools_triggered": "ink_send_feedback, ink_clear_feedback (from the widget)",
"expected_behavior": "The person clicks thumbs down in the Ink widget, picks a reason and sends feedback, then clicks Clear feedback. Before sending, the widget shows that feedback shares the original and rewritten text and any note with Ink to improve and train its models, and for how long. It uses feedback_note_retention_days from the job or result, 90 days by default. Both ratings accept an optional note of up to 500 characters, and only down accepts fixed reasons. Clear feedback removes the saved rating, reasons, shared text and note while preserving the rewrite. Both tools are app-only and invoked only by the widget at the person's request. The assistant does not send feedback on its own or call feedback tools from chat."
}
],
"negative": [
{
"description": "No document rewriting",
"prompt": "Rewrite this PDF with Ink."
},
{
"description": "No source ingestion",
"prompt": "Import my emails and train my Ink voice here."
},
{
"description": "No chat-driven feedback",
"prompt": "Rate my last Ink rewrite thumbs up for me."
}
]
},
"commerce": false,
"commerce_description": "Ink does not sell products or take payments inside ChatGPT. Public users buy an Ink plan or start an eligible trial on ink.ego.ist, where billing is managed. The reviewer demo account has unlimited use and needs no plan or card."
},
"publication": {
"release_notes": "Add three example prompts to the directory listing. Update the bundled skill with balanced rewrites by default, kept-section warnings, number warnings and refunded unreliable-output errors."
}
}
},
"apps": "./.app.json"
}
SHA-256: 112331359cbbc964315b1c6494124c5c44495d919a09c074280b94692e0949ee