Create portable ttyinv Markdown and validate it for free. Every agent call requires a revocable agent token. Hosted HTML, PDF, and PNG rendering also requires an active lifetime purchase.
GET STARTED
Three steps, then hand it to your agent.
01
Install the portable skill
Each harness reads skills from its own directory. Set TTYINV_SKILL_DIR to that directory. The command downloads the archive, verifies the checksum, prints the contents, then extracts the skill.
Field names vary by harness. Some harnesses name the block servers, or split the URL and the transport. Keep the endpoint, the transport, and the Authorization header. Read the configuration reference of your harness.
https://app.ttyinv.com/mcp
2
API
Use plain authenticated JSON
Create at https://app.ttyinv.com/api/v1/invoices, then validate and render from the returned source. Discovery and the schema are public. Every invoice operation requires the token.
# Paste the token at the silent prompt. The shell keeps it out of history.
read -r -s TTYINV_AGENT_TOKEN && export TTYINV_AGENT_TOKEN
# Discovery lists every operation, tool, status, and purchase rule.
curl --fail --silent --show-error "https://app.ttyinv.com/api/v1"
# The schema envelope is the authoritative input and output contract.
curl --fail --silent --show-error "https://app.ttyinv.com/api/v1/invoices/schema"
Each harness chooses its own skill directory and its own configuration file. ttyinv states the contract; your harness states the file names.
Capabilities of each agent path
Capability
MCP
API
CLI
Portable skill
Tool discovery
tools/list
GET https://app.ttyinv.com/api/v1
ttyinv --help
Describes both transports
Create and validate
create_invoice
POST https://app.ttyinv.com/api/v1/invoices
ttyinv init
Guides the workflow
Hosted HTML, PDF, PNG
render_invoice
POST https://app.ttyinv.com/api/v1/invoices/render
Renders on your machine
Documents hosted rendering
Purchase
Render only
Render only
Not required
Reports status 402
Agent token
Required
Required
Not used
Explains token use
Invoice content
Crosses the network
Crosses the network
Stays local
States the boundary
Setup
Configuration file
TTYINV_AGENT_TOKEN
Python package
Names skill directory
AUTHENTICATION LIVES ON THE APP
Sign in before handing out a key.
GitHub identifies the owner of each expiring, revocable token. The public website is static; token creation, revocation, and authenticated requests stay on the app runtime.