Observed since 20 Oct, 21:45 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
agentcrew-mcn
AI MCN 自动推广工具 — 多Agent内容营销自动化,支持掘金/知乎/Dev.to
📖 中文文档 | English
AgentCrew MCN is an open-source multi-agent content marketing automation tool. A team of AI "employees" handles the entire pipeline — from content creation to cross-platform distribution.
# 1. Install
pip install agentcrew-mcn
# 2. Initialize config
agentcrew-mcn init
# 3. Edit .env with your API keys
# DEEPSEEK_API_KEY=sk-...
# 4. Start using
agentcrew-mcn write generate --topic "Python async programming" --style technical
agentcrew-mcn publish post --file article.md --platform juejin --dry-run
💡
agent-crewis also available as an alias foragentcrew-mcn.
# 1. Clone
git clone https://github.com/super-rick/agentcrew-mcn.git
cd agentcrew-mcn
# 2. Install dependencies
pip install -r requirements.txt
# 3. Initialize
python -m cli.main init
# 4. Edit .env with your API keys
agentcrew-mcn init creates a config template. Key settings:
# config.yaml
llm:
api_key: ${DEEPSEEK_API_KEY} # Reads from .env
model: deepseek-chat
platforms:
juejin:
cookie: ${JUEJIN_COOKIE} # Export cookie from browser
devto:
api_key: ${DEVTO_API_KEY} # https://dev.to/settings/extensions
# Generate a technical article
agentcrew-mcn write generate --topic "Python async programming" --style technical
# Preview mode (no LLM call, inspect parameters)
agentcrew-mcn write generate --topic "Python async" --dry-run
# Publish to Juejin
agentcrew-mcn publish post --file article.md --platform juejin
# Scheduled publishing (every 6 hours)
agentcrew-mcn schedule start --topic-file topics.txt --platform juejin --interval 6
# RAG knowledge base
agentcrew-mcn rag ingest --file article.md --source "my_blog"
agentcrew-mcn rag search --query "AI Agent architecture"
┌─────────────────────────────────────────────────────┐
│ Orchestrator │
│ Task dispatch / Scheduler / Config │
└──┬──────────┬──────────────┬────────────────────────┘
│ │ │
┌──▼──────┐ ┌▼────────┐ ┌──▼────────┐
│ Writer │ │Publisher│ │ Analyst │
│ Agent │ │Agent │ │ Agent │
│ │ │ │ │ │
│ Skills: │ │ Skills: │ │ Skills: │
│ trending│ │ schedule│ │ report │
│ tech │ │ multi │ │ recommend │
│ thread │ │ batch │ │ │
│ │ │ │ │ │
│ Tools: │ │ Tools: │ │ Tools: │
│ search │ │ devto │ │ analytics │
│ rag │ │ juejin │ │ compare │
│ compose │ │ zhihu │ │ report │
└─────────┘ └─────────┘ └───────────┘
AgentCrew includes a Streamlit Dashboard for monitoring your AI marketing team.

| Publish Analysis | AI Analysis |
|---|---|
![]() | ![]() |
| Component | Technology |
|---|---|
| Language | Python 3.10+ |
| CLI | Click + Rich |
| LLM | DeepSeek API (OpenAI-compatible) |
| Vector DB | ChromaDB |
| Automation | Playwright |
| Dashboard | Streamlit + Plotly |
See ROADMAP.md for details.
MIT
Download counts and popularity will appear here as the collector receives them.
| Package / target | Requirement | Relationship |
|---|---|---|
openaiEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.10",
"evaluation": "NOT_EVALUATED"
} | openai>=1.0.0 | runtime |
httpxEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.10",
"evaluation": "NOT_EVALUATED"
} | httpx>=0.27.0 | runtime |
clickEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.10",
"evaluation": "NOT_EVALUATED"
} | click>=8.1.0 | runtime |
pyyamlEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.10",
"evaluation": "NOT_EVALUATED"
} | pyyaml>=6.0 | runtime |
richEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.10",
"evaluation": "NOT_EVALUATED"
} | rich>=13.0.0 | runtime |
chromadbEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.10",
"evaluation": "NOT_EVALUATED"
} | chromadb>=0.5.0 | runtime |
scheduleEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.10",
"evaluation": "NOT_EVALUATED"
} | schedule>=1.2.0 | runtime |
duckduckgo-searchEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.10",
"evaluation": "NOT_EVALUATED"
} | duckduckgo-search>=6.0.0 | runtime |
streamlitEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.10",
"evaluation": "NOT_EVALUATED"
} | streamlit>=1.28.0 | runtime |
pandasEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.10",
"evaluation": "NOT_EVALUATED"
} | pandas>=2.0.0 | runtime |
plotlyEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.10",
"evaluation": "NOT_EVALUATED"
} | plotly>=5.0.0 | runtime |
markdownEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.10",
"evaluation": "NOT_EVALUATED"
} | markdown>=3.5.0 | runtime |
pygmentsEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.10",
"evaluation": "NOT_EVALUATED"
} | pygments>=2.17.0 | runtime |
mcpEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.10",
"evaluation": "NOT_EVALUATED"
} | mcp>=1.0.0 | runtime |
pytestEnvironment{
"extras": "",
"marker": "extra == \"dev\"",
"requires_python": ">=3.10",
"evaluation": "NOT_EVALUATED"
} | pytest>=8.0.0; extra == "dev" | runtime |
pytest-asyncioEnvironment{
"extras": "",
"marker": "extra == \"dev\"",
"requires_python": ">=3.10",
"evaluation": "NOT_EVALUATED"
} | pytest-asyncio>=0.23.0; extra == "dev" | runtime |
pytest-covEnvironment{
"extras": "",
"marker": "extra == \"dev\"",
"requires_python": ">=3.10",
"evaluation": "NOT_EVALUATED"
} | pytest-cov>=5.0.0; extra == "dev" | runtime |
blackEnvironment{
"extras": "",
"marker": "extra == \"dev\"",
"requires_python": ">=3.10",
"evaluation": "NOT_EVALUATED"
} | black>=24.0.0; extra == "dev" | runtime |
ruffEnvironment{
"extras": "",
"marker": "extra == \"dev\"",
"requires_python": ">=3.10",
"evaluation": "NOT_EVALUATED"
} | ruff>=0.1.0; extra == "dev" | runtime |
bdist_wheel · 117.85 KB · Python py3
sdist · 90.89 KB · Python source
Observed since 20 Oct, 21:45 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package_version:2ce71cdab7bce766957fa04030031ea97f94d9da13ff3457c8eef80bc97ba321