{"adoption": {"forks": 3037, "observed_at": "2026-08-28T04:12:00.613319+00:00", "stars": 34508}, "canonical_url": "https://ross.abutalabs.com/products/qwenpaw", "card": {"archived": false, "artifact_type": "application", "description": "Your Personal AI Assistant; easy to install, deploy on your own machine or on the cloud; supports multiple chat apps with easily extensible capabilities.", "domain": ["chatbots", "large-language-models", "self-hosted", "developer-tools"], "enriched": true, "function": ["agent-framework", "chatbot", "mcp", "scheduling", "workflow-automation", "chat-interface"], "health_score": 100, "homepage": "http://qwenpaw.agentscope.io/", "language": "Python", "license": "Apache-2.0", "license_family": "permissive", "maturity": "active", "member_repos": ["agentscope-ai/QwenPaw"], "name": "agentscope-ai/QwenPaw", "platform": ["python", "self-hosted", "cross-platform", "cloud"], "pushed_at": "2026-08-26T15:46:46+00:00", "repo": "agentscope-ai/QwenPaw", "stars": 34508, "tags": ["personal-ai-assistant", "skills", "multi-channel", "agent-harness", "webui", "llm-tools", "ai-agents", "automation", "docker", "discord", "telegram"], "topics": ["agent", "llm-tools", "llms", "skills", "agentscope", "agent-harness", "harness-engineering", "super-agent", "loop-engineering", "ai-agent", "ai-agents", "chatbot", "personal-ai-assistant", "self-hosted", "webui", "mcp"], "urls": [], "use_cases": ["run a personal ai assistant on my own machine", "chat with an ai assistant over discord or dingtalk", "schedule automated tasks with an llm agent", "self-hosted chatgpt alternative with custom skills", "extend an ai assistant with mcp tools", "automate pdf and office document handling via chat"], "what_it_is": "QwenPaw is a self-hosted personal AI assistant built in Python that connects to multiple chat channels (DingTalk, Feishu, QQ, Discord, iMessage) and runs scheduled tasks. Its capabilities are driven by an extensible Skills system with built-in skills for cron scheduling, PDF/Office handling, news digests, and file reading, plus MCP support.", "when_to_avoid": ["you need a fully managed hosted assistant with no setup", "you want a simple single-channel chatbot with minimal footprint", "you need non-Python integration or a lightweight embedded agent"], "when_to_choose": ["you want a personal assistant that keeps all data on your own machine", "you need to reach the assistant through chat apps you already use", "you want to extend capabilities with custom skills or MCP tools", "you need scheduled/cron-driven LLM tasks"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/qwenpaw", "repo": "agentscope-ai/QwenPaw", "role": "main", "score": 81}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:12:00.613319+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T16:27:29.107035+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "915f8a2d6e27eb952fb95d7138ab309df2d89b382b6477a580a333d80743beb5", "fetched_at": "2026-08-28T04:12:00.613319+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agentscope-ai/QwenPaw"}, {"content_hash": "f7d051e81abb78d87c5e05c7618ad610285f2219503e6d02e86ebacd1fcd3f14", "fetched_at": "2026-08-29T07:48:13.991772+00:00", "kind": "homepage", "missing": false, "url": "http://qwenpaw.agentscope.io/"}, {"content_hash": "92848a58273c7986bb3475b4e81c8cf92a3c54cba9978c9fb96049e45d7ee54f", "fetched_at": "2026-08-29T07:48:14.001117+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/qwenpaw/json"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:12:00.613319+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T16:27:29.107035+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "915f8a2d6e27eb952fb95d7138ab309df2d89b382b6477a580a333d80743beb5", "fetched_at": "2026-08-28T04:12:00.613319+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agentscope-ai/QwenPaw"}, {"content_hash": "f7d051e81abb78d87c5e05c7618ad610285f2219503e6d02e86ebacd1fcd3f14", "fetched_at": "2026-08-29T07:48:13.991772+00:00", "kind": "homepage", "missing": false, "url": "http://qwenpaw.agentscope.io/"}, {"content_hash": "92848a58273c7986bb3475b4e81c8cf92a3c54cba9978c9fb96049e45d7ee54f", "fetched_at": "2026-08-29T07:48:14.001117+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/qwenpaw/json"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T16:27:29.107035+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "915f8a2d6e27eb952fb95d7138ab309df2d89b382b6477a580a333d80743beb5", "fetched_at": "2026-08-28T04:12:00.613319+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agentscope-ai/QwenPaw"}, {"content_hash": "f7d051e81abb78d87c5e05c7618ad610285f2219503e6d02e86ebacd1fcd3f14", "fetched_at": "2026-08-29T07:48:13.991772+00:00", "kind": "homepage", "missing": false, "url": "http://qwenpaw.agentscope.io/"}, {"content_hash": "92848a58273c7986bb3475b4e81c8cf92a3c54cba9978c9fb96049e45d7ee54f", "fetched_at": "2026-08-29T07:48:14.001117+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/qwenpaw/json"}], "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:12:00.613319+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:12:00.613319+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:12:00.613319+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T16:27:29.107035+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "915f8a2d6e27eb952fb95d7138ab309df2d89b382b6477a580a333d80743beb5", "fetched_at": "2026-08-28T04:12:00.613319+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agentscope-ai/QwenPaw"}, {"content_hash": "f7d051e81abb78d87c5e05c7618ad610285f2219503e6d02e86ebacd1fcd3f14", "fetched_at": "2026-08-29T07:48:13.991772+00:00", "kind": "homepage", "missing": false, "url": "http://qwenpaw.agentscope.io/"}, {"content_hash": "92848a58273c7986bb3475b4e81c8cf92a3c54cba9978c9fb96049e45d7ee54f", "fetched_at": "2026-08-29T07:48:14.001117+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/qwenpaw/json"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:12:00.613319+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:12:00.613319+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T16:27:29.107035+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "915f8a2d6e27eb952fb95d7138ab309df2d89b382b6477a580a333d80743beb5", "fetched_at": "2026-08-28T04:12:00.613319+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agentscope-ai/QwenPaw"}, {"content_hash": "f7d051e81abb78d87c5e05c7618ad610285f2219503e6d02e86ebacd1fcd3f14", "fetched_at": "2026-08-29T07:48:13.991772+00:00", "kind": "homepage", "missing": false, "url": "http://qwenpaw.agentscope.io/"}, {"content_hash": "92848a58273c7986bb3475b4e81c8cf92a3c54cba9978c9fb96049e45d7ee54f", "fetched_at": "2026-08-29T07:48:14.001117+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/qwenpaw/json"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:12:00.613319+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:12:00.613319+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:12:00.613319+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T16:27:29.107035+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "915f8a2d6e27eb952fb95d7138ab309df2d89b382b6477a580a333d80743beb5", "fetched_at": "2026-08-28T04:12:00.613319+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agentscope-ai/QwenPaw"}, {"content_hash": "f7d051e81abb78d87c5e05c7618ad610285f2219503e6d02e86ebacd1fcd3f14", "fetched_at": "2026-08-29T07:48:13.991772+00:00", "kind": "homepage", "missing": false, "url": "http://qwenpaw.agentscope.io/"}, {"content_hash": "92848a58273c7986bb3475b4e81c8cf92a3c54cba9978c9fb96049e45d7ee54f", "fetched_at": "2026-08-29T07:48:14.001117+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/qwenpaw/json"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:12:00.613319+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:12:00.613319+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T16:27:29.107035+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "915f8a2d6e27eb952fb95d7138ab309df2d89b382b6477a580a333d80743beb5", "fetched_at": "2026-08-28T04:12:00.613319+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agentscope-ai/QwenPaw"}, {"content_hash": "f7d051e81abb78d87c5e05c7618ad610285f2219503e6d02e86ebacd1fcd3f14", "fetched_at": "2026-08-29T07:48:13.991772+00:00", "kind": "homepage", "missing": false, "url": "http://qwenpaw.agentscope.io/"}, {"content_hash": "92848a58273c7986bb3475b4e81c8cf92a3c54cba9978c9fb96049e45d7ee54f", "fetched_at": "2026-08-29T07:48:14.001117+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/qwenpaw/json"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T16:27:29.107035+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "915f8a2d6e27eb952fb95d7138ab309df2d89b382b6477a580a333d80743beb5", "fetched_at": "2026-08-28T04:12:00.613319+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agentscope-ai/QwenPaw"}, {"content_hash": "f7d051e81abb78d87c5e05c7618ad610285f2219503e6d02e86ebacd1fcd3f14", "fetched_at": "2026-08-29T07:48:13.991772+00:00", "kind": "homepage", "missing": false, "url": "http://qwenpaw.agentscope.io/"}, {"content_hash": "92848a58273c7986bb3475b4e81c8cf92a3c54cba9978c9fb96049e45d7ee54f", "fetched_at": "2026-08-29T07:48:14.001117+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/qwenpaw/json"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T16:27:29.107035+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "915f8a2d6e27eb952fb95d7138ab309df2d89b382b6477a580a333d80743beb5", "fetched_at": "2026-08-28T04:12:00.613319+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agentscope-ai/QwenPaw"}, {"content_hash": "f7d051e81abb78d87c5e05c7618ad610285f2219503e6d02e86ebacd1fcd3f14", "fetched_at": "2026-08-29T07:48:13.991772+00:00", "kind": "homepage", "missing": false, "url": "http://qwenpaw.agentscope.io/"}, {"content_hash": "92848a58273c7986bb3475b4e81c8cf92a3c54cba9978c9fb96049e45d7ee54f", "fetched_at": "2026-08-29T07:48:14.001117+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/qwenpaw/json"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T16:27:29.107035+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "915f8a2d6e27eb952fb95d7138ab309df2d89b382b6477a580a333d80743beb5", "fetched_at": "2026-08-28T04:12:00.613319+00:00", "kind": "readme", "missing": false, "url": "https://github.com/agentscope-ai/QwenPaw"}, {"content_hash": "f7d051e81abb78d87c5e05c7618ad610285f2219503e6d02e86ebacd1fcd3f14", "fetched_at": "2026-08-29T07:48:13.991772+00:00", "kind": "homepage", "missing": false, "url": "http://qwenpaw.agentscope.io/"}, {"content_hash": "92848a58273c7986bb3475b4e81c8cf92a3c54cba9978c9fb96049e45d7ee54f", "fetched_at": "2026-08-29T07:48:14.001117+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/qwenpaw/json"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 13, "rhythm": 97}, "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": 190, "days_push": 7, "days_rel": 20, "gap_med": 2, "n_releases_24m": 48}, "score": 81, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}