# sheeki03/tirith

Terminal security for developers and AI agents. Intercepts homograph URLs, pipe-to-shell, ANSI injection, obfuscated payloads, data exfiltration, and malicious AI skills/configs before they execute.

Repository: https://github.com/sheeki03/tirith
Canonical: https://ross.abutalabs.com/products/tirith
Homepage: https://tirith.sh
Language: Rust
License: AGPL-3.0
License Family: copyleft
Topics: cli, devtools, homograph-attack, rust, security, shell, supply-chain-security, terminal, unicode, url-security
Last push: 2026-08-26T05:05:16+00:00

## Health v2 (maintenance only)
Score: 78/100 (v2, computed 2026-09-03T02:39:23.370411+00:00)
- activity 99, release rhythm 87, longevity 15
- inputs: {"age_days": 212, "days_push": 7, "days_rel": 8, "gap_med": 1, "n_releases_24m": 86}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 2683, forks 93 (observed 2026-08-28T04:07:10.094359+00:00)

## What it is
Tirith is a Rust-based terminal security tool that intercepts shell commands, pasted content, and files to block threats like homograph URLs, pipe-to-shell, ANSI injection, credential exfiltration, and malicious AI configs before they execute. It integrates via shell hooks, an MCP server for AI coding agents, CI pipelines, and an LSP server, backed by 200+ detection rules and a signed threat intelligence database.

## Use cases
- block curl pipe-to-shell commands with homograph URLs before they execute
- protect my terminal from pasted commands containing hidden unicode or ANSI escape characters
- secure AI coding agents like Claude Code or Cursor from running malicious shell commands
- detect typosquatted git repos and malicious npm/pip packages before install
- scan CLAUDE.md and MCP configs for prompt injection and hidden instructions
- detect API keys and secrets being leaked in terminal commands
- add terminal command scanning to CI with SARIF output

## When to choose
- you run shell commands from AI agents and want a fail-closed guard against prompt-injected or obfuscated commands
- you want browser-grade protection against homograph/punycode URLs in your terminal
- you need supply-chain checks for git, docker, pip, and npm commands

## When to avoid
- you need a hardened authorization boundary - the docs note enforcement varies by shell and mode
- you require a permissive license - it is AGPL-3.0
- you need zero-latency guarantees on shells or terminals with untested hook support

## Facets
- artifact type: cli-tool
- maturity: active
- function: security, cli, developer-tools, mcp, vulnerability-scanning
- domain: security, developer-tools
- platform: windows, cli, rust
- tags: terminal-security, homograph-attack, shell-hook, pipe-to-shell, ansi-injection, threat-intelligence, ai-agent-security, supply-chain-security, unicode-security, command-line, ai-agents, macos, linux

## Member repositories
- sheeki03/tirith (main) score 78

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:07:10.094359+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T02:17:53.664523+00:00, confidence not recorded.
  - readme: https://github.com/sheeki03/tirith (fetched 2026-08-28T04:07:10.094359+00:00, sha 45104bc3cbe1)
  - homepage: https://tirith.sh (fetched 2026-08-29T10:00:08.677461+00:00, sha 1c4599a2ceb9)
  - site_page: https://tirith.sh/docs (fetched 2026-08-29T10:00:08.681215+00:00, sha 7a5c03309f95)
  - site_page: https://tirith.sh/docs/detection-rules (fetched 2026-08-29T10:00:08.683065+00:00, sha 6ecc15a0b9aa)
  - site_page: https://tirith.sh/docs/mcp-setup (fetched 2026-08-29T10:00:08.686741+00:00, sha 57ac324df31a)
  - site_page: https://tirith.sh/docs/getting-started (fetched 2026-08-29T10:00:08.688367+00:00, sha 9338a5d00f8e)
  - registry_crates: https://crates.io/api/v1/crates/tirith (fetched 2026-08-29T10:00:08.689980+00:00, sha 601d03283490)
- Data as of 2026-08-30T08:39:29.467469+00:00.
