
Security News
/Company News
Socket Is Sponsoring Composer and Packagist
Socket has joined the new Composer and Packagist sponsorship program as a launch sponsor, supporting the team that keeps PHP's package ecosystem secure.
openmeta-cli
Advanced tools
让开源贡献从“想做”变成“持续产出”。
Turn open-source ambition into repeatable contribution output.
OpenMeta CLI is an autonomous, local-first contribution agent for developers who want more than issue lists and inspiration. It scouts real GitHub opportunities, ranks them against your profile, prepares repository context, drafts patch and PR materials, and keeps a durable record of everything you ship.
它不是一个只会”推荐 issue”的工具。它是一条完整的开源贡献流水线:发现机会、判断价值、准备工作区、生成补丁方案、沉淀仓库记忆、记录贡献证据,并把整个过程组织成可以每天稳定运行的系统。

OpenMeta CLI 是面向真实开源产出的自治贡献 Agent。
它帮助开发者持续发现高价值 issue,理解仓库上下文,准备 patch / PR 草稿,并把贡献过程沉淀为可复用、可追踪、可自动化的资产。
开源贡献最难的,从来不是“写代码”本身,而是前面的那一长串摩擦:
OpenMeta CLI 的价值,在于把这些零散、低效、重复的动作,收束成一个持续运转的贡献系统。
它不是简单地把 issue 拉下来给你看,而是站在“贡献产出”视角,围绕真实开发者最关心的几个问题设计:
OpenMeta 会从 GitHub 拉取开放 issue,并结合你的技术栈、熟练度、关注方向,对候选机会进行综合评分。
评分不是单一维度,而是同时考虑:
这意味着你看到的不是“更多 issue”,而是更可能做成、也更值得做的 issue。
发现机会之后,OpenMeta 会为目标仓库准备本地工作区,自动拉取代码、识别候选文件、读取关键片段、检测常见测试命令,并结合 Repo Memory 形成更贴近仓库现实的上下文。
这一步的意义非常大:
你不必每次都从零摸索项目结构,工具会先帮你把“第一轮认知成本”降下来。
OpenMeta 会进一步生成:
也就是说,它不是停在“推荐方向”,而是推动你走到能真正开始提交贡献的那一步。
很多工具的价值在第一次使用时很强,第二次就断掉了。
OpenMeta 的设计重点之一,是让你的每次贡献行为都沉淀为下一次更高效的起点。
它会记录:
工具越跑越懂你的贡献路径,系统性优势会越来越明显。
如果你希望把贡献节奏变成日常机制,OpenMeta 可以安装本地调度器,在 macOS 上使用 launchd,在 Linux 上使用 cron,按你设定的时间执行无人值守流程。
这带来的不是“炫技式自动化”,而是更接近真实工作流的能力:
OpenMeta CLI 目前覆盖的主流程包括:
good first issue / help wanted 等标签的开放 issueOpenMeta 没有托管式后端依赖来替你“接管”流程。
流程编排、状态保存、工作区准备、产物沉淀都在本地完成。你显式配置的 GitHub API 与 LLM API 之外,没有额外的平台锁定。
很多工具擅长“写得像在做事”。
OpenMeta 更关注的是:能不能更高概率地把一次贡献从机会识别推进到实际产物。
Inbox、Repo Memory、PoW、自动化调度,这些都说明它不是只服务于单次体验,而是为了长期积累而设计。
| 模块 | 能力 |
|---|---|
| Opportunity Scoring | 对 issue 按技术匹配、时效性、上手清晰度、合并潜力、影响力综合排序 |
| Agent Loop | 执行从 issue 到 workspace、patch draft、PR draft 的自治流程 |
| Workspace Prep | 克隆仓库、识别候选文件、提取片段、探测测试命令、可运行基础校验 |
| Repo Memory | 为不同仓库保存记忆,持续提升上下文命中率 |
| Inbox | 沉淀高价值贡献机会,形成可回看的贡献收件箱 |
| Proof of Work | 将每次 Agent 运行记录为可追踪的贡献证据 |
| Artifact Publishing | 将 dossier、draft、inbox、PoW 等资产发布到目标私有仓库 |
| Automation | 支持本机每日调度,实现长期无人值守运行 |
| Secure Config | 敏感凭证采用 AES 加密存储 |
Scout issues
-> Rank by fit and opportunity
-> Prepare repo workspace
-> Detect files and checks
-> Draft patch strategy
-> Draft PR narrative
-> Save inbox / memory / proof-of-work
-> Optionally publish artifacts
-> Repeat daily
# 1. 安装依赖
bun install
# 2. 编译为可执行文件
bun run build
# 3. 链接到全局,使 openmeta 命令随处可用
bun link
执行 bun link 后,openmeta 命令即可在任意终端路径下使用。如需取消链接,执行 bun unlink。
你也可以通过 npm link 或 npm install -g . 达到同样效果。
openmeta --help
openmeta --version
# 1. 初始化配置
openmeta init
# 2. 手动运行自治贡献 Agent
openmeta agent
# 3. 只看机会排名
openmeta scout --limit 10
openmeta scout --local --limit 10
# 4. 查看贡献沉淀
openmeta inbox
openmeta pow
openmeta runs
# 5. 查看或调整配置
openmeta config view
openmeta config set llm.apiKey <your-api-key>
# 6. 检查本地运行前置条件
openmeta doctor
| 命令 | 说明 |
|---|---|
openmeta init | 交互式初始化 GitHub、LLM、用户画像、目标仓库和自动化配置 |
openmeta doctor | 检查本地配置、运行时、工作目录、目标仓库和调度器状态 |
openmeta agent | 运行自治贡献主流程 |
openmeta agent --draft-only | 只生成 dossier、patch draft 和 PR draft,不改仓库、不创建 PR |
openmeta agent --refresh | 忽略本地 issue 搜索缓存,重新从 GitHub 发现机会 |
openmeta agent --repo <repository> | 限定到一个 GitHub 仓库 URL 或 owner/name 进行发现、分析和 PR 创建 |
openmeta agent --repo <repository> --issue <number> | 直接解决指定仓库里的某个 issue,并沿用 agent 的 patch / PR 流程 |
openmeta agent --issue <issue-url> | 直接从 GitHub issue URL 推导仓库并解决该 issue |
openmeta agent --headless | 使用已保存设置进行无人值守执行 |
openmeta agent --run-checks | 执行检测到的基础校验命令 |
openmeta daily | agent 的兼容别名,支持相同运行参数 |
openmeta scout --limit <count> | 查看高价值贡献机会排名 |
openmeta scout --refresh | 强制刷新 GitHub issue discovery 缓存 |
openmeta scout --repo <repository> | 从一个 GitHub 仓库 URL 或 owner/name 中筛选贡献机会 |
openmeta scout --local | 使用本地启发式评分,不调用 LLM,适合模型服务暂时不可用时先筛机会 |
openmeta inbox | 查看已起草的贡献机会收件箱 |
openmeta pow | 查看贡献工作量证明记录 |
openmeta runs | 查看最近命令运行记录、耗时和失败原因 |
openmeta runs <id> | 查看单次运行详情 |
openmeta automation status | 查看自动化状态 |
openmeta automation enable | 启用每日自动化 |
openmeta automation disable | 关闭每日自动化 |
openmeta config view | 查看当前配置 |
openmeta config set <key> <value> | 修改配置项 |
openmeta config reset | 重置配置 |
OpenMeta 会在本地维护自己的工作目录与状态:
~/.config/openmeta/config.json~/.openmeta/workspaces~/.openmeta/artifacts这使它非常适合个人长期使用:状态明确、路径稳定、可审计、可备份。
OpenMeta 的卖点不是“替你托管一切”,而是在你可控的本地环境里,把贡献流程自动化。
OpenMeta CLI 不是一个“看起来很聪明”的开源玩具,而是一个把开源贡献做成长期系统的工具。
如果你希望自己的开源参与不再依赖一时兴起,而是变成一种稳定、可积累、可复利的工程习惯,那么它值得你认真关注。
MIT
OpenMeta CLI is an autonomous contribution agent built for real open-source throughput.
It helps developers consistently discover worthwhile issues, understand unfamiliar repositories faster, draft patch and PR materials, and turn every run into reusable contribution assets.
The hardest part of open source is rarely typing code.
It is the repeated friction before the code:
OpenMeta CLI is valuable because it turns that fragmented, high-friction process into a repeatable contribution system.
It is designed around the questions serious contributors actually ask:
OpenMeta pulls open GitHub issues and ranks them against your technical profile.
The scoring model considers multiple signals together:
The result is not more noise. It is a cleaner stream of opportunities that are more likely to be worth your time.
Once an opportunity is selected, OpenMeta prepares a local workspace, fetches the repository, identifies likely files, reads meaningful snippets, detects common validation commands, and brings repo memory into the loop.
That matters because repository entry cost is where many contribution attempts die.
OpenMeta lowers that first cognitive wall before you even begin.
OpenMeta can generate and maintain:
This makes it far more than a recommendation engine. It is built to move you closer to an actual contribution outcome.
Many tools feel impressive once and useless the second time.
OpenMeta is explicitly built so each run strengthens the next one.
It preserves:
Over time, the tool becomes more than automation. It becomes infrastructure for your contribution habit.
When you want consistency, OpenMeta can install a local scheduler using launchd on macOS or cron on Linux and run your contribution loop on a daily cadence.
That is not automation theater. It is practical leverage:
OpenMeta CLI currently covers a full contribution-oriented workflow:
good first issue and help wantedOpenMeta does not require an OpenMeta-hosted backend to orchestrate your workflow.
Workspace preparation, state management, artifact generation, and contribution records stay local. The only network services involved are the GitHub and LLM APIs you explicitly configure.
Some tools are excellent at looking productive.
OpenMeta is optimized around a stricter question: does this move a contribution forward?
Repo memory, inbox, proof of work, and scheduler support all point to the same product philosophy: this is meant to compound.
| Module | Value |
|---|---|
| Opportunity Scoring | Rank issues by technical fit, freshness, onboarding clarity, merge potential, and impact |
| Agent Loop | Run an end-to-end flow from issue discovery to workspace prep, patch draft, and PR draft |
| Workspace Prep | Clone repos, surface likely files, extract snippets, detect validation commands, and run baseline checks when requested |
| Repo Memory | Preserve repository-specific context so future runs get sharper |
| Inbox | Keep the highest-value drafted opportunities in one place |
| Proof of Work | Record every agent run as a contribution asset |
| Artifact Publishing | Publish dossiers, drafts, inbox state, and proof-of-work history to a target private repo |
| Automation | Install a local daily scheduler for unattended execution |
| Secure Config | Store sensitive credentials with AES encryption |
Scout issues
-> Rank by fit and opportunity
-> Prepare repo workspace
-> Detect files and checks
-> Draft patch strategy
-> Draft PR narrative
-> Save inbox / memory / proof-of-work
-> Optionally publish artifacts
-> Repeat daily
# 1. Install dependencies
bun install
# 2. Compile into a standalone binary
bun run build
# 3. Link globally so the openmeta command is available everywhere
bun link
After running bun link, the openmeta command is available in any terminal session. To unlink, run bun unlink.
You can also use npm link or npm install -g . to achieve the same result.
openmeta --help
openmeta --version
# 1. Initialize GitHub, LLM, profile, repo, and automation settings
openmeta init
# 2. Run the autonomous contribution loop
openmeta agent
# 3. Only scout and rank opportunities
openmeta scout --limit 10
openmeta scout --local --limit 10
# 4. Inspect durable contribution assets
openmeta inbox
openmeta pow
openmeta runs
# 5. Review or update configuration
openmeta config view
openmeta config set llm.apiKey <your-api-key>
# 6. Check local prerequisites before a full run
openmeta doctor
| Command | Description |
|---|---|
openmeta init | Interactive setup for GitHub, LLM, profile, target repo, and automation |
openmeta doctor | Check local config, runtimes, paths, target repo, and scheduler state |
openmeta agent | Run the autonomous contribution workflow |
openmeta agent --draft-only | Generate dossier, patch draft, and PR draft artifacts without editing files or opening a PR |
openmeta agent --refresh | Ignore the local issue search cache and discover fresh GitHub opportunities |
openmeta agent --repo <repository> | Limit issue discovery, ranking, workspace prep, and draft PR creation to one upstream GitHub repository URL or owner/name |
openmeta agent --repo <repository> --issue <number> | Solve one issue from the specified repository and continue through the normal patch / PR flow |
openmeta agent --issue <issue-url> | Infer the repository from a GitHub issue URL and solve that issue directly |
openmeta agent --headless | Execute unattended using saved automation defaults |
openmeta agent --run-checks | Run detected baseline validation commands |
openmeta daily | Compatibility alias for agent with the same runtime options |
openmeta scout --limit <count> | Show ranked contribution opportunities |
openmeta scout --refresh | Force-refresh the GitHub issue discovery cache |
openmeta scout --repo <repository> | Rank opportunities from one upstream GitHub repository URL or owner/name |
openmeta scout --local | Use local heuristic scoring without calling the LLM provider |
openmeta inbox | Show drafted contribution opportunities |
openmeta pow | Show proof-of-work history |
openmeta runs | Show recent command runs, durations, and failure reasons |
openmeta runs <id> | Inspect one recorded run |
openmeta automation status | Show automation status |
openmeta automation enable | Enable daily unattended automation |
openmeta automation disable | Disable daily unattended automation |
openmeta provider config | Configure a reusable LLM provider profile interactively |
openmeta provider list | List saved LLM provider profiles |
openmeta provider save <name> | Save current LLM settings as a reusable provider profile |
openmeta provider add <name> | Add a provider profile from command-line values |
openmeta provider use <name> | Switch the active LLM provider to a saved profile |
openmeta provider remove <name> | Remove a saved provider profile |
openmeta config view | Show current configuration |
openmeta config set <key> <value> | Update a config value |
openmeta config reset | Reset configuration |
Example provider workflow:
openmeta provider config
openmeta provider save production
openmeta provider use production --validate
OpenMeta keeps a clear local footprint:
~/.config/openmeta/config.json~/.openmeta/workspaces~/.openmeta/artifactsThis makes the tool practical for long-term individual use: stable paths, inspectable state, and easy backup.
OpenMeta's promise is not "we host everything for you."
Its promise is stronger for many developers: your contribution workflow stays under your control.
OpenMeta CLI is not an open-source productivity toy. It is a system for compounding contribution momentum.
If you want your open-source work to become more consistent, more intentional, and more durable over time, this project deserves attention.
MIT
FAQs
OpenMeta CLI - Developer's daily open source growth companion
We found that openmeta-cli demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
/Company News
Socket has joined the new Composer and Packagist sponsorship program as a launch sponsor, supporting the team that keeps PHP's package ecosystem secure.

Research
/Security News
Benign-looking npm packages split malicious functionality across a dependency chain that deploys a cross-platform RAT targeting Alibaba developers.

Research
/Security News
Two Joyfill npm beta releases contain an import-time implant that uses blockchain transactions to retrieve a remote-access trojan.