andy-spike/armin
v1.1.0AGPL-3.0-only
Turn articles, notes, documents, and Anki decks into Armin spaced-repetition cards, with prerequisites and a guided, image-preserving Anki import.
hosts
- intent-bullfrog-922.convex.site
plugin.json
- name
- armin
- version
- 1.1.0
- description
- Turn articles, notes, documents, and Anki decks into Armin spaced-repetition cards, with prerequisites and a guided, image-preserving Anki import.
- author
- Andy Spikehttps://armincards.app
- license
- AGPL-3.0-only
- homepage
- https://armincards.app
- repository
- https://github.com/andy-spike/armin
- extensions
- com.openai
mcp.json
- arminstreamable-httphttps://intent-bullfrog-922.convex.site/mcp
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "armin",
"version": "1.1.0",
"description": "Turn articles, notes, documents, and Anki decks into Armin spaced-repetition cards, with prerequisites and a guided, image-preserving Anki import.",
"author": {
"name": "Andy Spike",
"url": "https://armincards.app"
},
"homepage": "https://armincards.app",
"repository": "https://github.com/andy-spike/armin",
"license": "AGPL-3.0-only",
"keywords": ["flashcards", "spaced-repetition", "study", "learning", "fsrs"],
"extensions": {
"com.openai": {
"interface": {
"displayName": "Armin",
"shortDescription": "Turn reading into study cards",
"longDescription": "Armin is a spaced-repetition flashcard app whose cards form a prerequisite graph: a card stays locked until the cards it depends on are learned, and FSRS schedules every review.\n\nShare an article, lecture notes, a document, or code, and ask for study cards. The model reads the material, writes focused question-and-answer, cloze, reversed, and typed-answer cards, links foundations to the ideas built on them, and saves the deck to your Armin library with a link to start studying.\n\nYou approve each connection in Armin. One approval gives the assistant Armin authoring and import tools on your whole library, including decks and cards you add later. Armin never fetches web pages or runs a model itself, and the plugin cannot permanently delete cards or decks, change review history, or manage your account. Archiving a card is reversible.\n\nFor Anki exports, a capable assistant can download and run Armin’s deterministic converter, preserve supported images through scoped upload tools, and publish new decks after you approve the preview. Imports start fresh; requested repairs or polishing are separate. Requires file access and Node.js execution.\n\nRequires an Armin account at armincards.app.",
"developerName": "Andy Spike",
"category": "Education & Research",
"capabilities": ["Create study decks", "Read decks", "Edit cards", "Link prerequisites"],
"websiteURL": "https://armincards.app",
"supportURL": "https://github.com/andy-spike/armin/issues",
"privacyPolicyURL": "https://armincards.app/privacy",
"termsOfServiceURL": "https://armincards.app/terms",
"defaultPrompt": [
"Make study cards in Armin from this article.",
"Turn my lecture notes into an Armin deck with prerequisites.",
"Show my Armin decks."
],
"brandColor": "#111111",
"brandColorDark": "#FFFCEF",
"composerIcon": "./assets/logo.png",
"logo": "./assets/logo.png"
},
"review": {
"test_cases": {
"positive": [
{
"description": "Create a new deck from pasted material",
"prompt": "Make an Armin deck called HTTP basics from this text: HTTP is a request-response protocol. A client sends a request with a method such as GET or POST, and the server replies with a status code such as 200 or 404.",
"tools_triggered": "save_cards",
"expected_behavior": "Saves several focused cards in a new deck named HTTP basics, links the definition of HTTP as a prerequisite of the method and status-code cards, and returns the deck link."
},
{
"description": "List the decks in the library",
"prompt": "Which Armin decks can you see?",
"tools_triggered": "list_decks",
"expected_behavior": "Lists the decks in the user's library with their names and explains that this approved connection can work across the whole library."
},
{
"description": "Read back a saved deck",
"prompt": "Show me the cards in my HTTP basics deck and how they depend on each other.",
"tools_triggered": "list_decks, read_deck, read_prerequisites",
"expected_behavior": "Finds the deck, lists its cards, and describes the prerequisite links without changing anything."
},
{
"description": "Edit one card",
"prompt": "In HTTP basics, change the status code card so its answer also mentions 500 Internal Server Error.",
"tools_triggered": "read_deck, update_card",
"expected_behavior": "Reads the current card and version, updates only that card's answer, and confirms the change."
},
{
"description": "Archive a card reversibly",
"prompt": "Archive the card about POST requests in HTTP basics.",
"tools_triggered": "read_deck, set_card_archived",
"expected_behavior": "Archives that one card, explains that archiving hides it from study while keeping its content and review history, and that it can be unarchived."
}
],
"negative": [
{
"description": "Permanent deletion is not available",
"prompt": "Permanently delete all my Armin decks."
},
{
"description": "Reviews and scheduling stay in Armin",
"prompt": "Mark all my Armin cards as reviewed and rated Easy today."
},
{
"description": "Account administration is not available",
"prompt": "Change my Armin password and email address."
}
]
},
"commerce": false,
"commerce_description": "Armin does not sell products or process payments through this plugin.",
"demo_recording_url": "https://youtu.be/mcg9uTu5DkM"
},
"publication": {
"release_notes": "First release: create, read, edit, archive, and link Armin study cards, with card-writing guidance."
}
}
}
}
What else this package ships
These files come with the package and this site does not publish them. They are listed so you know what is there before you install it.
- LICENSE
Client extensions
Data this package carries for particular clients. The directory lists the clients named and never reads what is addressed to them.
- com.openai