{"data":{"slug":"mturac-promptguard","name":"promptguard","tagline":"Audits prompts as behavioral contracts. Pre-write guard for agents that ship code.","github_url":"https://github.com/mturac/promptguard","owner":"mturac","repo":"promptguard","owner_avatar_url":"https://avatars.githubusercontent.com/u/345446?v=4","primary_language":"Python","stars":82,"forks":0,"topics":["ai-agents","audit","claude","claude-code","codex","guard","guardrails","llm","prompt-engineering","prompts","safety"],"archived":false,"github_pushed_at":"2026-05-17T00:18:56+00:00","maintenance_label":"Steady","url":"https://www.graphcanon.com/tools/mturac-promptguard","markdown_url":"https://www.graphcanon.com/tools/mturac-promptguard.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/mturac-promptguard","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=mturac-promptguard","description":"Audits prompts as behavioral contracts. Pre-write guard for agents that ship code.","homepage_url":"https://github.com/mturac/promptguard","license":"MIT","open_issues":0,"watchers":9,"ai_summary":null,"readme_excerpt":"## Quick Start\n\nRun without installing:\n\n```bash\npython3 -m promptguard audit prompts.py\nprintf '%s' 'Fix this bug and write code.' | python3 -m promptguard audit - --format markdown\n```\n\nInstall as a local CLI:\n\n```bash\npython3 -m venv .venv\nsource .venv/bin/activate\npython -m pip install -e .\npromptguard audit prompts.py\n```\n\nInstall as an app with `pipx`:\n\n```bash\npipx install promptguard\npromptguard audit prompts.py\n```\n\nInstall from GitHub before a package release:\n\n```bash\npipx install \"git+https://github.com/<owner>/promptguard.git\"\n```\n\nSave reports:\n\n```bash\npromptguard audit prompts.py --format json --save\n```\n\nSaved reports go to:\n\n```text\n.promptguard/reports.jsonl\n```","github_created_at":"2026-04-26T08:34:15+00:00","created_at":"2026-07-15T10:43:57.508088+00:00","updated_at":"2026-07-15T10:44:00.449448+00:00","categories":[{"slug":"ai-agents","name":"AI Agents","url":"https://www.graphcanon.com/categories/ai-agents","markdown_url":"https://www.graphcanon.com/categories/ai-agents.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/ai-agents"},{"slug":"developer-tools","name":"Developer Tools","url":"https://www.graphcanon.com/categories/developer-tools","markdown_url":"https://www.graphcanon.com/categories/developer-tools.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/developer-tools"},{"slug":"llm-frameworks","name":"LLM Frameworks","url":"https://www.graphcanon.com/categories/llm-frameworks","markdown_url":"https://www.graphcanon.com/categories/llm-frameworks.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/llm-frameworks"}],"tags":[{"slug":"ai-agents","name":"ai-agents"},{"slug":"audit","name":"audit"},{"slug":"claude","name":"claude"},{"slug":"claude-code","name":"claude code"},{"slug":"codex","name":"codex"},{"slug":"guard","name":"guard"},{"slug":"guardrails","name":"guardrails"},{"slug":"llm","name":"llm"}],"trust":{"provenance":{"is_fork":false,"github_id":1221460575,"owner_type":"User","methodology":"github_public_v1","parent_repo":null,"near_duplicate_slugs":[]},"computed_at":"2026-07-15T10:43:58.570Z","maintenance":{"label":"Steady","score":60,"methodology":"github_public_v1","releases_90d":1,"days_since_push":59,"last_release_at":"2026-05-16T22:58:31Z"},"security_summary":{"status":"no_lockfile","scanner":null,"low_count":0,"high_count":0,"last_scan_at":"2026-07-15T10:43:59.068Z","medium_count":0,"scan_profile":"none","critical_count":0}},"capability_facts":{"scan":{"source":"repo_scan","observed_at":"2026-07-15T10:43:58.266Z"},"has_cli":{"value":true,"source":"pyproject.toml:[project.scripts]","observed_at":"2026-07-15T10:43:58.266Z"},"languages":{"value":["python"],"source":"github.language+pyproject.toml","observed_at":"2026-07-15T10:43:58.266Z"},"license_spdx":{"value":"MIT","source":"github.license","observed_at":"2026-07-15T10:43:58.266Z"}}}}