{"adoption": {"forks": 93, "observed_at": "2026-08-28T04:03:56.576178+00:00", "stars": 1193}, "canonical_url": "https://ross.abutalabs.com/products/typedai", "card": {"archived": false, "artifact_type": "framework", "description": "TypeScript AI platform with AI chat, Autonomous agents, Software developer agents, chatbots and more", "domain": ["artificial-intelligence", "large-language-models", "chatbots", "developer-tools"], "enriched": true, "function": ["agent-framework", "llm-inference", "chatbot", "rag", "prompt-engineering", "mcp", "web-framework", "cli", "tracing", "monitoring"], "health_score": 68, "homepage": "https://typedai.dev", "language": "TypeScript", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["TrafficGuard/typedai"], "name": "TrafficGuard/typedai", "platform": ["self-hosted", "cloud", "cli"], "pushed_at": "2025-12-22T08:48:06+00:00", "repo": "TrafficGuard/typedai", "stars": 1193, "tags": ["autonomous-agents", "coding-agents", "code-review-agent", "slack-chatbot", "multi-llm", "human-in-the-loop", "opentelemetry", "ai-software-engineer", "ai-agents", "automation", "nodejs", "typescript", "docker", "web-server"], "topics": ["agentic-framework", "agents", "ai-agents", "ai-agents-framework", "llm", "typescript", "ai-code-review", "ai-software-engineer"], "urls": [], "use_cases": ["build autonomous ai agents in typescript", "create an ai software engineer that edits my repo", "automate pull request code reviews with llm", "build a slack chatbot powered by llm", "run llm workflows with cost tracking and tracing", "ticket to merge request automation with ai", "chat with multiple llm providers from one interface"], "what_it_is": "TypedAI is a TypeScript-first platform for building and running autonomous AI agents, LLM workflows, chatbots, and AI software engineering agents. It ships with a CLI and web UI, multi-provider LLM support, tool integrations, and OpenTelemetry-based observability.", "when_to_avoid": ["you need a lightweight single-purpose SDK rather than a full platform", "your stack is Python-first and you prefer LangChain-style ecosystems", "you only need simple chat completions without agent infrastructure"], "when_to_choose": ["you want a full TypeScript agent platform with UI, CLI, and deployment options", "you need coding agents for repo editing, ticket-to-PR workflows, or code review", "you want multi-provider LLM support with observability and human-in-the-loop controls"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/typedai", "repo": "TrafficGuard/typedai", "role": "main", "score": 52}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:56.576178+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:22:12.835460+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "79338ba0eb89aaa123d78c028154b03d7b6ce99fb0747a23deb0ba63213bfc7f", "fetched_at": "2026-08-28T04:03:56.576178+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TrafficGuard/typedai"}, {"content_hash": "a0b6ae30e962fc4933b3ef35ce834ed192a3fb566b230fe1293de33cec99ed6f", "fetched_at": "2026-08-29T12:29:30.777785+00:00", "kind": "homepage", "missing": false, "url": "https://typedai.dev"}, {"content_hash": "00e3ee9d43fe68afed25f3d89c678adb6042079af3fb53a4e0f123397081a0db", "fetched_at": "2026-08-29T12:29:30.785990+00:00", "kind": "site_page", "missing": false, "url": "https://typedai.dev/code"}, {"content_hash": "c7346c91565d20cce4826810d7e2d62dda4f74f5669627fe04f683ce132a0962", "fetched_at": "2026-08-29T12:29:30.788461+00:00", "kind": "site_page", "missing": false, "url": "https://typedai.dev/integrations"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:56.576178+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:22:12.835460+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "79338ba0eb89aaa123d78c028154b03d7b6ce99fb0747a23deb0ba63213bfc7f", "fetched_at": "2026-08-28T04:03:56.576178+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TrafficGuard/typedai"}, {"content_hash": "a0b6ae30e962fc4933b3ef35ce834ed192a3fb566b230fe1293de33cec99ed6f", "fetched_at": "2026-08-29T12:29:30.777785+00:00", "kind": "homepage", "missing": false, "url": "https://typedai.dev"}, {"content_hash": "00e3ee9d43fe68afed25f3d89c678adb6042079af3fb53a4e0f123397081a0db", "fetched_at": "2026-08-29T12:29:30.785990+00:00", "kind": "site_page", "missing": false, "url": "https://typedai.dev/code"}, {"content_hash": "c7346c91565d20cce4826810d7e2d62dda4f74f5669627fe04f683ce132a0962", "fetched_at": "2026-08-29T12:29:30.788461+00:00", "kind": "site_page", "missing": false, "url": "https://typedai.dev/integrations"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:22:12.835460+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "79338ba0eb89aaa123d78c028154b03d7b6ce99fb0747a23deb0ba63213bfc7f", "fetched_at": "2026-08-28T04:03:56.576178+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TrafficGuard/typedai"}, {"content_hash": "a0b6ae30e962fc4933b3ef35ce834ed192a3fb566b230fe1293de33cec99ed6f", "fetched_at": "2026-08-29T12:29:30.777785+00:00", "kind": "homepage", "missing": false, "url": "https://typedai.dev"}, {"content_hash": "00e3ee9d43fe68afed25f3d89c678adb6042079af3fb53a4e0f123397081a0db", "fetched_at": "2026-08-29T12:29:30.785990+00:00", "kind": "site_page", "missing": false, "url": "https://typedai.dev/code"}, {"content_hash": "c7346c91565d20cce4826810d7e2d62dda4f74f5669627fe04f683ce132a0962", "fetched_at": "2026-08-29T12:29:30.788461+00:00", "kind": "site_page", "missing": false, "url": "https://typedai.dev/integrations"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:03:56.576178+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:56.576178+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:56.576178+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:22:12.835460+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "79338ba0eb89aaa123d78c028154b03d7b6ce99fb0747a23deb0ba63213bfc7f", "fetched_at": "2026-08-28T04:03:56.576178+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TrafficGuard/typedai"}, {"content_hash": "a0b6ae30e962fc4933b3ef35ce834ed192a3fb566b230fe1293de33cec99ed6f", "fetched_at": "2026-08-29T12:29:30.777785+00:00", "kind": "homepage", "missing": false, "url": "https://typedai.dev"}, {"content_hash": "00e3ee9d43fe68afed25f3d89c678adb6042079af3fb53a4e0f123397081a0db", "fetched_at": "2026-08-29T12:29:30.785990+00:00", "kind": "site_page", "missing": false, "url": "https://typedai.dev/code"}, {"content_hash": "c7346c91565d20cce4826810d7e2d62dda4f74f5669627fe04f683ce132a0962", "fetched_at": "2026-08-29T12:29:30.788461+00:00", "kind": "site_page", "missing": false, "url": "https://typedai.dev/integrations"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:56.576178+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:56.576178+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:22:12.835460+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "79338ba0eb89aaa123d78c028154b03d7b6ce99fb0747a23deb0ba63213bfc7f", "fetched_at": "2026-08-28T04:03:56.576178+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TrafficGuard/typedai"}, {"content_hash": "a0b6ae30e962fc4933b3ef35ce834ed192a3fb566b230fe1293de33cec99ed6f", "fetched_at": "2026-08-29T12:29:30.777785+00:00", "kind": "homepage", "missing": false, "url": "https://typedai.dev"}, {"content_hash": "00e3ee9d43fe68afed25f3d89c678adb6042079af3fb53a4e0f123397081a0db", "fetched_at": "2026-08-29T12:29:30.785990+00:00", "kind": "site_page", "missing": false, "url": "https://typedai.dev/code"}, {"content_hash": "c7346c91565d20cce4826810d7e2d62dda4f74f5669627fe04f683ce132a0962", "fetched_at": "2026-08-29T12:29:30.788461+00:00", "kind": "site_page", "missing": false, "url": "https://typedai.dev/integrations"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:56.576178+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:56.576178+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:56.576178+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:22:12.835460+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "79338ba0eb89aaa123d78c028154b03d7b6ce99fb0747a23deb0ba63213bfc7f", "fetched_at": "2026-08-28T04:03:56.576178+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TrafficGuard/typedai"}, {"content_hash": "a0b6ae30e962fc4933b3ef35ce834ed192a3fb566b230fe1293de33cec99ed6f", "fetched_at": "2026-08-29T12:29:30.777785+00:00", "kind": "homepage", "missing": false, "url": "https://typedai.dev"}, {"content_hash": "00e3ee9d43fe68afed25f3d89c678adb6042079af3fb53a4e0f123397081a0db", "fetched_at": "2026-08-29T12:29:30.785990+00:00", "kind": "site_page", "missing": false, "url": "https://typedai.dev/code"}, {"content_hash": "c7346c91565d20cce4826810d7e2d62dda4f74f5669627fe04f683ce132a0962", "fetched_at": "2026-08-29T12:29:30.788461+00:00", "kind": "site_page", "missing": false, "url": "https://typedai.dev/integrations"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:56.576178+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:56.576178+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:22:12.835460+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "79338ba0eb89aaa123d78c028154b03d7b6ce99fb0747a23deb0ba63213bfc7f", "fetched_at": "2026-08-28T04:03:56.576178+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TrafficGuard/typedai"}, {"content_hash": "a0b6ae30e962fc4933b3ef35ce834ed192a3fb566b230fe1293de33cec99ed6f", "fetched_at": "2026-08-29T12:29:30.777785+00:00", "kind": "homepage", "missing": false, "url": "https://typedai.dev"}, {"content_hash": "00e3ee9d43fe68afed25f3d89c678adb6042079af3fb53a4e0f123397081a0db", "fetched_at": "2026-08-29T12:29:30.785990+00:00", "kind": "site_page", "missing": false, "url": "https://typedai.dev/code"}, {"content_hash": "c7346c91565d20cce4826810d7e2d62dda4f74f5669627fe04f683ce132a0962", "fetched_at": "2026-08-29T12:29:30.788461+00:00", "kind": "site_page", "missing": false, "url": "https://typedai.dev/integrations"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:22:12.835460+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "79338ba0eb89aaa123d78c028154b03d7b6ce99fb0747a23deb0ba63213bfc7f", "fetched_at": "2026-08-28T04:03:56.576178+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TrafficGuard/typedai"}, {"content_hash": "a0b6ae30e962fc4933b3ef35ce834ed192a3fb566b230fe1293de33cec99ed6f", "fetched_at": "2026-08-29T12:29:30.777785+00:00", "kind": "homepage", "missing": false, "url": "https://typedai.dev"}, {"content_hash": "00e3ee9d43fe68afed25f3d89c678adb6042079af3fb53a4e0f123397081a0db", "fetched_at": "2026-08-29T12:29:30.785990+00:00", "kind": "site_page", "missing": false, "url": "https://typedai.dev/code"}, {"content_hash": "c7346c91565d20cce4826810d7e2d62dda4f74f5669627fe04f683ce132a0962", "fetched_at": "2026-08-29T12:29:30.788461+00:00", "kind": "site_page", "missing": false, "url": "https://typedai.dev/integrations"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:22:12.835460+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "79338ba0eb89aaa123d78c028154b03d7b6ce99fb0747a23deb0ba63213bfc7f", "fetched_at": "2026-08-28T04:03:56.576178+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TrafficGuard/typedai"}, {"content_hash": "a0b6ae30e962fc4933b3ef35ce834ed192a3fb566b230fe1293de33cec99ed6f", "fetched_at": "2026-08-29T12:29:30.777785+00:00", "kind": "homepage", "missing": false, "url": "https://typedai.dev"}, {"content_hash": "00e3ee9d43fe68afed25f3d89c678adb6042079af3fb53a4e0f123397081a0db", "fetched_at": "2026-08-29T12:29:30.785990+00:00", "kind": "site_page", "missing": false, "url": "https://typedai.dev/code"}, {"content_hash": "c7346c91565d20cce4826810d7e2d62dda4f74f5669627fe04f683ce132a0962", "fetched_at": "2026-08-29T12:29:30.788461+00:00", "kind": "site_page", "missing": false, "url": "https://typedai.dev/integrations"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:22:12.835460+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "79338ba0eb89aaa123d78c028154b03d7b6ce99fb0747a23deb0ba63213bfc7f", "fetched_at": "2026-08-28T04:03:56.576178+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TrafficGuard/typedai"}, {"content_hash": "a0b6ae30e962fc4933b3ef35ce834ed192a3fb566b230fe1293de33cec99ed6f", "fetched_at": "2026-08-29T12:29:30.777785+00:00", "kind": "homepage", "missing": false, "url": "https://typedai.dev"}, {"content_hash": "00e3ee9d43fe68afed25f3d89c678adb6042079af3fb53a4e0f123397081a0db", "fetched_at": "2026-08-29T12:29:30.785990+00:00", "kind": "site_page", "missing": false, "url": "https://typedai.dev/code"}, {"content_hash": "c7346c91565d20cce4826810d7e2d62dda4f74f5669627fe04f683ce132a0962", "fetched_at": "2026-08-29T12:29:30.788461+00:00", "kind": "site_page", "missing": false, "url": "https://typedai.dev/integrations"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 58, "longevity": 62, "rhythm": 40}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 875, "days_push": 254, "days_rel": 450, "gap_med": 13.0, "n_releases_24m": 9}, "score": 52, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}