Model or dataset
tsingyuai/growth-lab avatar
tsingyuai/growth-lab

Growth Lab: An End-to-End AI Agent Growth Workflow Built on Claude Code and Codex

An end-to-end growth tool that understands the product, fetch the data it needs, researches the market, executes campaigns, and reviews results to improve the next round of growth. 从代码到市场的开源端到端增长工具。理解产品、接入信息渠道、研究市场、执行增长行动,并基于真实数据自我改进。

1,992 stars172 forksPythonApache-2.0

At a glance

What is it?
Growth Lab is an open-source Python project that runs product growth campaigns as agent-driven workflows inside Claude Code or Codex, covering SEO page generation, Xiaohongshu content creation and posting, and WeChat article drafting, with each capability storing results in a per-model persistent memory that seeds the next campaign round.
Who is it for?
Growth Lab suits solo builders and small teams who run their product's growth from a code repository and want SEO pages, Xiaohongshu content, or WeChat articles generated, reviewed, and tracked without switching between tools. The closed-loop memory design means results from one campaign round are available to the next.
Can I use it commercially?
Yes. Apache-2.0 is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository last received commits 3 days ago.
What is it written in?
Mainly Python, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 28, 2026, and from our analysis. They are not legal advice.

Editorial analysis

What Growth Lab Is and Who It Is For

Growth lab tools typically address one piece of the growth loop: generate copy, research competitors, publish to a platform, or display metrics. Context about the product gets lost when moving between tools, and decisions end up scattered across dashboards, documents, and manual handoffs.

Growth Lab addresses this by treating an AI coding session as the control plane. Claude Code or Codex serves as the runtime; each Model (a capability bundle) runs an observe-act-review cycle and writes results into a persistent memory namespace. The next campaign round reads that memory before acting. The repository is aimed at product builders who want to run growth from a code editor using natural language instructions rather than separate SaaS dashboards.

Growth Lab is fully open source under Apache-2.0 and is explicitly designed so that product data, research, memory, and output stay in the user's own workspace. The README describes this as a deliberate choice: no private formats, no closed flows, no migration barriers created by a vendor-controlled data store.

Architecture: Models, Skills, Collectors, and Executors

The product model described in the README divides responsibilities across four layers. The conversation is the control plane; the user issues goals in natural language and the agent responds with completed work and results. Claude Code or Codex is the runtime that executes work. Skills are Markdown documents that teach the runtime how to understand the product, conduct research, choose tools, form strategy, create content, and analyze results. Clients are external execution capabilities: browser access, official platform APIs, data exports, content platforms, and image generation.

Four component types implement this:

- Collectors gather data from demand, competitor, content, and product growth sources (Xiaohongshu via browser-first MCP, Bing Webmaster API via BING_WEBMASTER_API_KEY) - Model Skills coordinate the observe-act-review cycle and persist memory - Executor Skills handle creation, publishing, human collaboration, and review - An example workspace shows the full growth process

Memory is file-based. The file system serves as long-term memory across sessions. Product context, research data, decisions, and results are written to the workspace and read at the start of the next round. The repository does not include private product data, historical samples, generated posts, or memory from past runs.

Setting Up Growth Lab

Clone the repository and open it with Claude Code or Codex:

bash
git clone https://github.com/tsingyuai/growth-lab.git
cd growth-lab

Once open, ask the agent what Growth Lab can do, or describe a growth outcome directly. The onboarding skill (models/onboard-growth-lab/SKILL.md) audits all capability dependencies and reports which API keys, client binaries, and external integrations are missing. The README gives this example:

text
检查 Growth Lab 现在还缺哪些配置。
帮我配置小红书采集和生图;SEO 相关能力暂时跳过。

Configuration is done through natural language. The agent checks for API keys defined in a .env file (a .env.example is included in the repository root), third-party clients, browser state, and login sessions. Secrets, cookies, and authentication profiles are kept outside the repository and never written to memory. The CONFIGURATION.md file documents each field, its location, and how to remove it.

Current Capabilities: SEO, Xiaohongshu, and WeChat

Growth Lab currently ships three Models. The SEO page growth loop (models/run-seo-page-loop/SKILL.md) identifies search scenarios where users might look for the product, researches actual queries, and generates SEO pages that answer those queries. The Xiaohongshu replication and review loop (models/xhs-replicate/SKILL.md) coordinates collection, writing, AI-taste reduction, screenshot, image generation, card rendering, compliance checking, and post result review. The WeChat article loop (models/run-wechat-article-loop/SKILL.md) writes long-form articles, previews and checks compliance, syncs a draft via the WeChat official API, and publishes under a three-confirmation gate.

For Xiaohongshu collection, the repository uses a browser-first xiaohongshu-mcp running locally (defaulting to port 18063, configured via XHS_MCP_ENDPOINT). Image generation requires an OpenAI or Gemini API key (OPENAI_API_KEY or GEMINI_API_KEY). The Makefile provides targets for linting, rendering, drafting, and publishing each content type, for example:

bash
make wechat-draft POST=memory/run-wechat-article-loop/outputs/<slug>
make wechat-publish POST=memory/run-wechat-article-loop/outputs/<slug>

Actual Xiaohongshu publishing remains a human step. The README states that automatic WeChat publishing requires the WECHAT_ENABLE_AUTO_PUBLISH environment variable set to true, wechat.yml containing publish.approved=true, and the --confirm-publish flag.

Limitations and What Is Not Covered

Growth Lab covers SEO pages, Xiaohongshu, and WeChat at launch. Other channels, paid advertising, email, and analytics integrations are not included. The README frames the project as one that is actively looking for feedback on which platforms to add next, inviting issues that describe what product teams are trying to grow and where their current workflow breaks.

The Xiaohongshu collector uses a browser-first approach, meaning the xiaohongshu-mcp binary and its login state must be set up outside the repository. The binary and cookies are not distributed with Growth Lab; teams must obtain and configure them separately. Rate limits are enforced: XHS_RATE_LIMIT_PER_MIN defaults to 20 and XHS_BACKOFF_SECONDS to 300. The WeChat executor supports both a direct local connection (requiring the exit IP to be whitelisted in the WeChat backend) and a remote service mode where the AppSecret is kept only on the server.

The SEO results cited in the README come from one real run on one product. The README notes explicitly that results are affected by the product, domain, search demand, page quality, site authority, and observation window. These numbers should not be treated as typical outcomes.

An Alternative Approach: Separate SaaS Growth Tools

The most common alternative to Growth Lab is using separate purpose-built SaaS tools for each growth channel: a dedicated SEO content tool, a social media scheduling platform, and a publishing API client. These tools typically have polished UIs, pre-built integrations, and team collaboration features that Growth Lab does not provide.

The key difference is where product context lives. In a SaaS setup, context has to be re-entered into each tool's interface. Growth Lab keeps everything in the repository workspace and makes it available to the agent across sessions through the file-based memory. Teams that want auditability (every decision and result saved in files the team can inspect) and want to run growth from a code editor rather than a browser will find the architecture more natural. Teams that prioritize UI polish, team permissions, or channels Growth Lab does not yet cover should evaluate whether the SaaS route is faster.

License and Maintenance

Growth Lab is licensed under the Apache License 2.0, which permits use, modification, distribution, and commercial use with attribution and a notice of changes. The repository last received a push on 2026-08-11 and is not archived. The project has no GitHub releases; versioning appears to be tracked through the repository itself rather than tagged releases.

Editorial conclusion

Growth Lab suits solo builders and small teams who run their product's growth from a code repository and want SEO pages, Xiaohongshu content, or WeChat articles generated, reviewed, and tracked without switching between tools. The closed-loop memory design means results from one campaign round are available to the next. Teams with stricter publishing controls should note that Xiaohongshu posts still require human approval and WeChat auto-publish requires three explicit confirmations (environment flag WECHAT_ENABLE_AUTO_PUBLISH=true, wechat.yml publish.approved=true, and the --confirm-publish flag passed to the CLI). The repository last received a push on 2026-08-11 and is not archived; the onboarding skill in models/onboard-growth-lab/SKILL.md is the entry point for checking which API keys and client dependencies are missing before starting.

Frequently asked questions

What AI runtime does Growth Lab require?

Growth Lab is designed to run inside Claude Code or Codex as the agent runtime. The README describes the conversation as the control plane and Claude Code or Codex as the execution layer. It does not ship a standalone CLI that runs outside of one of these coding agents.

Does Growth Lab work without Xiaohongshu access?

Yes. The onboarding skill lets you configure only the capabilities you need. The README explicitly gives an example where a user asks to set up Xiaohongshu collection and image generation while skipping SEO-related capabilities. Each Model is independent, and missing credentials for one channel do not block others.

How does Growth Lab store campaign results across sessions?

Each Model writes its operational data, analysis, action results, and next-step suggestions to a persistent memory namespace in the file system. The README describes this as long-term memory that survives across sessions. The next campaign round reads this memory before starting its observation phase. The repository does not distribute private product data or past memory.

Official sources

  1. Issues
  2. License: Apache-2.0
  3. Project website
  4. README
  5. tsingyuai/growth-lab on GitHub
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/tsingyuai-growth-lab.svg)](https://hysenlabs.com/projects/tsingyuai-growth-lab)