mirror of
https://github.com/EvoMap/evolver.git
synced 2026-09-18 21:47:53 +08:00
docs: license to GPL-3.0-or-later; drop internal Public Release section; fix issue-repo/runtime refs
- License section now states GPL-3.0-or-later (was stale MIT) in README / README.zh-CN / SKILL. - Remove the maintainer-only "Public Release" section (non-existent npm scripts + internal publish flow). - EVOLVER_ISSUE_REPO documented default -> EvoMap/evolver (matches code default). - Point auto-issue hint (index.js) and skill attribution footer (skillPublisher.js) at EvoMap/evolver. - Normalize `evolver run` -> `evolver`; rewrite Roadmap into directional items. - Drop .github/CODEOWNERS from the public mirror. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,63 +0,0 @@
|
||||
# Code owners for this repository
|
||||
# Format: each rule grants automatic review-request to the listed owner(s)
|
||||
# when a matching path is touched in a PR. Combined with branch protection's
|
||||
# "Require review from Code Owners" rule on main, these owners must approve
|
||||
# the PR before it can merge.
|
||||
#
|
||||
# Multiple owners on each line means GitHub will auto-request a review from
|
||||
# all listed owners on a matching PR; ANY one of them approving is sufficient
|
||||
# to satisfy the branch-protection 'require code owner review' gate. This is
|
||||
# the agreed fallback order: autogame-17 primary, forrestlinfeng + cloudcarver
|
||||
# as backups when the primary is unavailable.
|
||||
#
|
||||
# Why we need this: PR #34 (2026-05-10) was self-merged by the author 2 minutes
|
||||
# before a maintainer review comment landed, shipping a missing obfuscate
|
||||
# registration into main. CODEOWNERS + branch protection make that pattern
|
||||
# physically impossible.
|
||||
|
||||
# Default: every file is owned by autogame-17 unless a more specific rule below
|
||||
# overrides it. Keeps coverage complete even for files we forget to call out.
|
||||
* @autogame-17 @forrestlinfeng @cloudcarver
|
||||
|
||||
# High-risk paths -- listed explicitly so GitHub UI surfaces "Owner review
|
||||
# required" prominently when these are touched, even if the catch-all above
|
||||
# would already cover them. New contributors should treat any change here
|
||||
# as a multi-day review cycle.
|
||||
|
||||
# GEP schemas (Gene / Capsule / Task / future). Validators and defaults must
|
||||
# stay in sync with hub-side expectations; shallow-copy bugs and validator-
|
||||
# wiring gaps in this directory have a track record (PR #25 / #27 / audit #30).
|
||||
/src/gep/schemas/ @autogame-17 @forrestlinfeng @cloudcarver
|
||||
|
||||
# Pipeline modules. Module-load order vs dotenv is fragile here; refactors
|
||||
# in PR #20-#24 introduced multiple dotenv-ordering and missing-import
|
||||
# regressions before merge.
|
||||
/src/evolve/ @autogame-17 @forrestlinfeng @cloudcarver
|
||||
|
||||
# Content-addressable storage and integrity primitives. Any change here
|
||||
# changes asset_id semantics across all stored capsules.
|
||||
/src/gep/contentHash.js @autogame-17 @forrestlinfeng @cloudcarver
|
||||
/src/gep/crypto.js @autogame-17 @forrestlinfeng @cloudcarver
|
||||
/src/gep/integrityCheck.js @autogame-17 @forrestlinfeng @cloudcarver
|
||||
/src/gep/shield.js @autogame-17 @forrestlinfeng @cloudcarver
|
||||
/src/gep/hubVerify.js @autogame-17 @forrestlinfeng @cloudcarver
|
||||
|
||||
# Anything that touches secrets, sanitization, or proxy auth.
|
||||
/src/gep/sanitize.js @autogame-17 @forrestlinfeng @cloudcarver
|
||||
/src/proxy/ @autogame-17 @forrestlinfeng @cloudcarver
|
||||
|
||||
# Public-mirror surface. Manifest mistakes leak source / runtime assets to
|
||||
# npm; build/publish scripts directly drive npm + GitHub Release.
|
||||
/public.manifest.json @autogame-17 @forrestlinfeng @cloudcarver
|
||||
/scripts/build_public.js @autogame-17 @forrestlinfeng @cloudcarver
|
||||
/scripts/publish_public.js @autogame-17 @forrestlinfeng @cloudcarver
|
||||
/scripts/pre_publish_check.js @autogame-17 @forrestlinfeng @cloudcarver
|
||||
/scripts/build_binaries.js @autogame-17 @forrestlinfeng @cloudcarver
|
||||
/scripts/deploy.sh @autogame-17 @forrestlinfeng @cloudcarver
|
||||
|
||||
# Repo metadata that gates everything else.
|
||||
/.github/ @autogame-17 @forrestlinfeng @cloudcarver
|
||||
/.cursor/ @autogame-17 @forrestlinfeng @cloudcarver
|
||||
/CODEOWNERS @autogame-17 @forrestlinfeng @cloudcarver
|
||||
/package.json @autogame-17 @forrestlinfeng @cloudcarver
|
||||
/package-lock.json @autogame-17 @forrestlinfeng @cloudcarver
|
||||
+9
-32
@@ -181,7 +181,7 @@ evolver --loop
|
||||
| ループ (`evolver --loop`) | 適応的スリープ付きのデーモンループで上記を繰り返す |
|
||||
| OpenClaw 内 | ホストランタイムが `sessions_spawn(...)` などの stdout ディレクティブを解釈 |
|
||||
|
||||
> **`--loop` は「動作中のエージェントをリアルタイムで支援する」モードではありません。** ループモードはバックグラウンドの自己メンテナンス(validator 実行、worker タスク、ATP マーチャント自動配信、solidify)のためのもので、その stdout は evolver 自身が消費します。したがって、たとえ OpenClaw / Cursor / Claude Code がインストールされていても、ループモードで出力される `sessions_spawn(...)` ディレクティブはこれらのホストには届きません。evolver にライブセッションを観察・補助させたい場合は、そのエージェントセッションの **内部から** `evolver run` を呼び出してください(OpenClaw はその単一ランの stdout ディレクティブを取り込みます)。OpenClaw ユーザーはさらに、`AGENT_NAME`(または `AGENT_SESSIONS_DIR`)が実際にセッションを生成しているエージェントのディレクトリ(`~/.openclaw/agents/<名前>/sessions/`)を指していることを確認してください -- さもないと evolver は自身のログにフォールバックし、「空転している」ように見えます。
|
||||
> **`--loop` は「動作中のエージェントをリアルタイムで支援する」モードではありません。** ループモードはバックグラウンドの自己メンテナンス(validator 実行、worker タスク、ATP マーチャント自動配信、solidify)のためのもので、その stdout は evolver 自身が消費します。したがって、たとえ OpenClaw / Cursor / Claude Code がインストールされていても、ループモードで出力される `sessions_spawn(...)` ディレクティブはこれらのホストには届きません。evolver にライブセッションを観察・補助させたい場合は、そのエージェントセッションの **内部から** `evolver` を呼び出してください(OpenClaw はその単一ランの stdout ディレクティブを取り込みます)。OpenClaw ユーザーはさらに、`AGENT_NAME`(または `AGENT_SESSIONS_DIR`)が実際にセッションを生成しているエージェントのディレクトリ(`~/.openclaw/agents/<名前>/sessions/`)を指していることを確認してください -- さもないと evolver は自身のログにフォールバックし、「空転している」ように見えます。
|
||||
|
||||
## 対象ユーザー
|
||||
|
||||
@@ -404,7 +404,7 @@ EVOLVE_REPORT_TOOL=feishu-card
|
||||
永続的にオプトアウト:
|
||||
|
||||
```bash
|
||||
EVOLVER_VALIDATOR_ENABLED=0 evolver run --loop
|
||||
EVOLVER_VALIDATOR_ENABLED=0 evolver --loop
|
||||
```
|
||||
|
||||
### GitHub Issue 自動報告
|
||||
@@ -414,7 +414,7 @@ evolver が持続的な失敗(失敗ループまたは高い失敗率での繰
|
||||
| 変数 | デフォルト | 説明 |
|
||||
|----------|---------|-------------|
|
||||
| `EVOLVER_AUTO_ISSUE` | `true` | 自動 issue 報告の有効/無効 |
|
||||
| `EVOLVER_ISSUE_REPO` | `autogame-17/capability-evolver` | ターゲット GitHub リポジトリ (owner/repo) |
|
||||
| `EVOLVER_ISSUE_REPO` | `EvoMap/evolver` | ターゲット GitHub リポジトリ (owner/repo) |
|
||||
| `EVOLVER_ISSUE_COOLDOWN_MS` | `86400000` (24h) | 同じエラーシグネチャのクールダウン期間 |
|
||||
| `EVOLVER_ISSUE_MIN_STREAK` | `5` | トリガーする最小連続失敗ストリーク |
|
||||
|
||||
@@ -456,33 +456,6 @@ evolver が持続的な失敗(失敗ループまたは高い失敗率での繰
|
||||
|
||||
`index.js` と `evolve.js` の `sessions_spawn(...)` 文字列は、直接の関数呼び出しではなく、**stdout へのテキスト出力**です。これらが解釈されるかどうかはホストランタイム(例: OpenClaw プラットフォーム)に依存します。evolver 自体は `sessions_spawn` を実行可能コードとして呼び出しません。
|
||||
|
||||
## パブリックリリース
|
||||
|
||||
このリポジトリはパブリックディストリビューションです。
|
||||
|
||||
- パブリック出力のビルド: `npm run build`
|
||||
- パブリック出力の公開: `npm run publish:public`
|
||||
- ドライラン: `DRY_RUN=true npm run publish:public`
|
||||
|
||||
必須環境変数:
|
||||
|
||||
- `PUBLIC_REMOTE` (デフォルト: `public`)
|
||||
- `PUBLIC_REPO` (例: `EvoMap/evolver`)
|
||||
- `PUBLIC_OUT_DIR` (デフォルト: `dist-public`)
|
||||
- `PUBLIC_USE_BUILD_OUTPUT` (デフォルト: `true`)
|
||||
|
||||
オプションの環境変数:
|
||||
|
||||
- `SOURCE_BRANCH` (デフォルト: `main`)
|
||||
- `PUBLIC_BRANCH` (デフォルト: `main`)
|
||||
- `RELEASE_TAG` (例: `v1.0.41`)
|
||||
- `RELEASE_TITLE` (例: `v1.0.41 - GEP protocol`)
|
||||
- `RELEASE_NOTES` または `RELEASE_NOTES_FILE`
|
||||
- GitHub Release 作成用の `GITHUB_TOKEN`(または `GH_TOKEN` / `GITHUB_PAT`)
|
||||
- `RELEASE_SKIP` (GitHub Release の作成をスキップするには `true`;デフォルトは作成)
|
||||
- `RELEASE_USE_GH` (GitHub API の代わりに `gh` CLI を使用するには `true`)
|
||||
- `PUBLIC_RELEASE_ONLY` (既存のタグに対して Release のみを作成するには `true`;公開なし)
|
||||
|
||||
## バージョニング (SemVer)
|
||||
|
||||
MAJOR.MINOR.PATCH
|
||||
@@ -517,8 +490,12 @@ MAJOR.MINOR.PATCH
|
||||
|
||||
## ロードマップ
|
||||
|
||||
- 1 分間のデモワークフローを追加
|
||||
- 代替案との比較表を追加
|
||||
方針であり確約ではありません。最新のバックログは [GitHub Issues](https://github.com/EvoMap/evolver/issues) を参照してください。
|
||||
|
||||
- **オンボーディング**: 1 分間のクイックスタートデモと、他のエージェント進化手法との比較表。
|
||||
- **GEP 統合の深化**: より豊富なシグナル抽出と Gene / Capsule 選択、および再利用アナリティクス。
|
||||
- **メモリとスキル**: セッション結果を再利用可能な Gene / Capsule へより速く蒸留。
|
||||
- **対応ランタイムの拡大**: Cursor / Claude Code / Codex / Kiro / opencode / OpenClaw 以外のホスト統合を拡充。
|
||||
|
||||
## Star 履歴
|
||||
|
||||
|
||||
+9
-32
@@ -180,7 +180,7 @@ evolver --loop
|
||||
| 루프 (`evolver --loop`) | 적응형 슬립이 포함된 데몬 루프에서 위 과정을 반복 |
|
||||
| OpenClaw 내부 | 호스트 런타임이 `sessions_spawn(...)` 등 stdout 지시문을 해석 |
|
||||
|
||||
> **`--loop`은 "실행 중인 에이전트를 실시간으로 보조하는" 모드가 아닙니다.** 루프 모드는 백그라운드 자가 유지보수(validator 실행, worker 작업, ATP 상인 자동 배달, solidify)를 위한 것이며, 그 stdout은 evolver 자신이 소비합니다. 따라서 OpenClaw / Cursor / Claude Code가 설치되어 있더라도, 루프 모드에서 출력되는 `sessions_spawn(...)` 지시문은 이 호스트들에 전달되지 않습니다. 라이브 세션을 evolver가 관찰·보조하게 하려면, 해당 에이전트 세션 **내부에서** `evolver run`을 호출하세요(OpenClaw는 그 단일 실행의 stdout 지시문을 처리합니다). OpenClaw 사용자는 추가로, `AGENT_NAME`(또는 `AGENT_SESSIONS_DIR`)이 실제로 세션을 생성하는 에이전트 디렉터리(`~/.openclaw/agents/<이름>/sessions/`)를 가리키는지 확인하세요 -- 그렇지 않으면 evolver는 자신의 로그로 폴백하며, "빈 사이클만 돌고 있는" 것처럼 보입니다.
|
||||
> **`--loop`은 "실행 중인 에이전트를 실시간으로 보조하는" 모드가 아닙니다.** 루프 모드는 백그라운드 자가 유지보수(validator 실행, worker 작업, ATP 상인 자동 배달, solidify)를 위한 것이며, 그 stdout은 evolver 자신이 소비합니다. 따라서 OpenClaw / Cursor / Claude Code가 설치되어 있더라도, 루프 모드에서 출력되는 `sessions_spawn(...)` 지시문은 이 호스트들에 전달되지 않습니다. 라이브 세션을 evolver가 관찰·보조하게 하려면, 해당 에이전트 세션 **내부에서** `evolver`을 호출하세요(OpenClaw는 그 단일 실행의 stdout 지시문을 처리합니다). OpenClaw 사용자는 추가로, `AGENT_NAME`(또는 `AGENT_SESSIONS_DIR`)이 실제로 세션을 생성하는 에이전트 디렉터리(`~/.openclaw/agents/<이름>/sessions/`)를 가리키는지 확인하세요 -- 그렇지 않으면 evolver는 자신의 로그로 폴백하며, "빈 사이클만 돌고 있는" 것처럼 보입니다.
|
||||
|
||||
## 대상 사용자
|
||||
|
||||
@@ -403,7 +403,7 @@ EVOLVE_REPORT_TOOL=feishu-card
|
||||
영구적으로 옵트아웃:
|
||||
|
||||
```bash
|
||||
EVOLVER_VALIDATOR_ENABLED=0 evolver run --loop
|
||||
EVOLVER_VALIDATOR_ENABLED=0 evolver --loop
|
||||
```
|
||||
|
||||
### 자동 GitHub Issue 보고
|
||||
@@ -413,7 +413,7 @@ evolver가 지속적인 실패(실패 루프 또는 높은 실패율의 반복
|
||||
| 변수 | 기본값 | 설명 |
|
||||
|------|--------|------|
|
||||
| `EVOLVER_AUTO_ISSUE` | `true` | 자동 issue 보고 활성화/비활성화 |
|
||||
| `EVOLVER_ISSUE_REPO` | `autogame-17/capability-evolver` | 대상 GitHub 저장소 (owner/repo) |
|
||||
| `EVOLVER_ISSUE_REPO` | `EvoMap/evolver` | 대상 GitHub 저장소 (owner/repo) |
|
||||
| `EVOLVER_ISSUE_COOLDOWN_MS` | `86400000` (24시간) | 동일 오류 시그니처의 쿨다운 기간 |
|
||||
| `EVOLVER_ISSUE_MIN_STREAK` | `5` | 보고를 트리거하는 최소 연속 실패 횟수 |
|
||||
|
||||
@@ -455,33 +455,6 @@ evolver가 지속적인 실패(실패 루프 또는 높은 실패율의 반복
|
||||
|
||||
`index.js`와 `evolve.js`의 `sessions_spawn(...)` 문자열은 직접적인 함수 호출이 아닌 **stdout으로의 텍스트 출력**입니다. 이것이 해석되는지 여부는 호스트 런타임(예: OpenClaw 플랫폼)에 따라 다릅니다. evolver 자체는 `sessions_spawn`을 실행 가능한 코드로 호출하지 않습니다.
|
||||
|
||||
## 공개 릴리스
|
||||
|
||||
이 저장소는 공개 배포판입니다.
|
||||
|
||||
- 공개용 빌드: `npm run build`
|
||||
- 공개용 게시: `npm run publish:public`
|
||||
- 드라이런: `DRY_RUN=true npm run publish:public`
|
||||
|
||||
필수 환경 변수:
|
||||
|
||||
- `PUBLIC_REMOTE` (기본값: `public`)
|
||||
- `PUBLIC_REPO` (예: `EvoMap/evolver`)
|
||||
- `PUBLIC_OUT_DIR` (기본값: `dist-public`)
|
||||
- `PUBLIC_USE_BUILD_OUTPUT` (기본값: `true`)
|
||||
|
||||
선택 환경 변수:
|
||||
|
||||
- `SOURCE_BRANCH` (기본값: `main`)
|
||||
- `PUBLIC_BRANCH` (기본값: `main`)
|
||||
- `RELEASE_TAG` (예: `v1.0.41`)
|
||||
- `RELEASE_TITLE` (예: `v1.0.41 - GEP protocol`)
|
||||
- `RELEASE_NOTES` 또는 `RELEASE_NOTES_FILE`
|
||||
- GitHub Release 생성용 `GITHUB_TOKEN` (또는 `GH_TOKEN` / `GITHUB_PAT`)
|
||||
- `RELEASE_SKIP` (`true`로 설정하면 GitHub Release 생성을 건너뜀; 기본값은 생성)
|
||||
- `RELEASE_USE_GH` (`true`로 설정하면 GitHub API 대신 `gh` CLI 사용)
|
||||
- `PUBLIC_RELEASE_ONLY` (`true`로 설정하면 기존 태그에 대해 Release만 생성; 코드 게시 없음)
|
||||
|
||||
## 버전 관리 (SemVer)
|
||||
|
||||
MAJOR.MINOR.PATCH
|
||||
@@ -516,8 +489,12 @@ MAJOR.MINOR.PATCH
|
||||
|
||||
## 로드맵
|
||||
|
||||
- 1분 데모 워크플로 추가
|
||||
- 대안과의 비교 표 추가
|
||||
방향성이며 확약은 아닙니다. 최신 백로그는 [GitHub Issues](https://github.com/EvoMap/evolver/issues)에서 확인하세요.
|
||||
|
||||
- **온보딩**: 1분 퀵스타트 데모와 대안 에이전트 진화 방식과의 비교 표.
|
||||
- **GEP 통합 심화**: 더 풍부한 시그널 추출과 Gene / Capsule 선택, 그리고 재사용 분석.
|
||||
- **메모리와 스킬**: 세션 결과를 재사용 가능한 Gene / Capsule로 더 빠르게 증류.
|
||||
- **런타임 커버리지 확대**: Cursor / Claude Code / Codex / Kiro / opencode / OpenClaw 외 호스트 통합 확대.
|
||||
|
||||
## Star History
|
||||
|
||||
|
||||
@@ -203,7 +203,7 @@ When running inside a host runtime (e.g., [OpenClaw](https://openclaw.com)), the
|
||||
| Loop (`evolver --loop`) | Repeats the above in a daemon loop with adaptive sleep |
|
||||
| Inside OpenClaw | Host runtime interprets stdout directives like `sessions_spawn(...)` |
|
||||
|
||||
> **`--loop` is not a real-time agent assistant.** Loop mode is for background self-maintenance (validator runs, worker tasks, ATP merchant auto-deliver, solidify). Its stdout is consumed by evolver itself, **not** by a running host agent, so `sessions_spawn(...)` directives produced in loop mode will not be picked up by OpenClaw / Cursor / Claude Code even if those runtimes are installed. If you want evolver to observe and advise a live agent session, call `evolver run` from **inside** that agent session (OpenClaw will pick up the stdout directives on that single run). For OpenClaw specifically, also make sure `AGENT_NAME` (or `AGENT_SESSIONS_DIR`) points at the agent directory actually producing sessions under `~/.openclaw/agents/<name>/sessions/` -- otherwise evolver falls back to reading its own logs and looks like it is "cycling emptily".
|
||||
> **`--loop` is not a real-time agent assistant.** Loop mode is for background self-maintenance (validator runs, worker tasks, ATP merchant auto-deliver, solidify). Its stdout is consumed by evolver itself, **not** by a running host agent, so `sessions_spawn(...)` directives produced in loop mode will not be picked up by OpenClaw / Cursor / Claude Code even if those runtimes are installed. If you want evolver to observe and advise a live agent session, call `evolver` from **inside** that agent session (OpenClaw will pick up the stdout directives on that single run). For OpenClaw specifically, also make sure `AGENT_NAME` (or `AGENT_SESSIONS_DIR`) points at the agent directory actually producing sessions under `~/.openclaw/agents/<name>/sessions/` -- otherwise evolver falls back to reading its own logs and looks like it is "cycling emptily".
|
||||
|
||||
## Who This Is For / Not For
|
||||
|
||||
@@ -442,7 +442,7 @@ Persistent flag override: when the env is unset, the runtime reads `~/.evomap/fe
|
||||
To opt out permanently:
|
||||
|
||||
```bash
|
||||
EVOLVER_VALIDATOR_ENABLED=0 evolver run --loop
|
||||
EVOLVER_VALIDATOR_ENABLED=0 evolver --loop
|
||||
```
|
||||
|
||||
### Auto GitHub Issue Reporting
|
||||
@@ -452,7 +452,7 @@ When the evolver detects persistent failures (failure loop or recurring errors w
|
||||
| Variable | Default | Description |
|
||||
|----------|---------|-------------|
|
||||
| `EVOLVER_AUTO_ISSUE` | `true` | Enable/disable auto issue reporting |
|
||||
| `EVOLVER_ISSUE_REPO` | `autogame-17/capability-evolver` | Target GitHub repository (owner/repo) |
|
||||
| `EVOLVER_ISSUE_REPO` | `EvoMap/evolver` | Target GitHub repository (owner/repo) |
|
||||
| `EVOLVER_ISSUE_COOLDOWN_MS` | `86400000` (24h) | Cooldown period for the same error signature |
|
||||
| `EVOLVER_ISSUE_MIN_STREAK` | `5` | Minimum consecutive failure streak to trigger |
|
||||
|
||||
@@ -494,33 +494,6 @@ External Gene/Capsule assets ingested via `scripts/a2a_ingest.js` are staged in
|
||||
|
||||
The `sessions_spawn(...)` strings in `index.js` and `evolve.js` are **text output to stdout**, not direct function calls. Whether they are interpreted depends on the host runtime (e.g., OpenClaw platform). The evolver itself does not invoke `sessions_spawn` as executable code.
|
||||
|
||||
## Public Release
|
||||
|
||||
This repository is the public distribution.
|
||||
|
||||
- Build public output: `npm run build`
|
||||
- Publish public output: `npm run publish:public`
|
||||
- Dry run: `DRY_RUN=true npm run publish:public`
|
||||
|
||||
Required env vars:
|
||||
|
||||
- `PUBLIC_REMOTE` (default: `public`)
|
||||
- `PUBLIC_REPO` (e.g. `EvoMap/evolver`)
|
||||
- `PUBLIC_OUT_DIR` (default: `dist-public`)
|
||||
- `PUBLIC_USE_BUILD_OUTPUT` (default: `true`)
|
||||
|
||||
Optional env vars:
|
||||
|
||||
- `SOURCE_BRANCH` (default: `main`)
|
||||
- `PUBLIC_BRANCH` (default: `main`)
|
||||
- `RELEASE_TAG` (e.g. `v1.0.41`)
|
||||
- `RELEASE_TITLE` (e.g. `v1.0.41 - GEP protocol`)
|
||||
- `RELEASE_NOTES` or `RELEASE_NOTES_FILE`
|
||||
- `GITHUB_TOKEN` (or `GH_TOKEN` / `GITHUB_PAT`) for GitHub Release creation
|
||||
- `RELEASE_SKIP` (`true` to skip creating a GitHub Release; default is to create)
|
||||
- `RELEASE_USE_GH` (`true` to use `gh` CLI instead of GitHub API)
|
||||
- `PUBLIC_RELEASE_ONLY` (`true` to only create a Release for an existing tag; no publish)
|
||||
|
||||
## Versioning (SemVer)
|
||||
|
||||
MAJOR.MINOR.PATCH
|
||||
@@ -555,8 +528,12 @@ Clone it into any directory you like. If you use [OpenClaw](https://openclaw.com
|
||||
|
||||
## Roadmap
|
||||
|
||||
- Add a one-minute demo workflow
|
||||
- Add a comparison table vs alternatives
|
||||
Directional, not commitments — the live backlog lives in [GitHub Issues](https://github.com/EvoMap/evolver/issues).
|
||||
|
||||
- **Onboarding**: a one-minute quickstart demo and a comparison table vs. alternative agent-evolution approaches.
|
||||
- **Deeper GEP integration**: richer signal extraction and Gene / Capsule selection, plus reuse analytics.
|
||||
- **Memory & skills**: faster distillation of session outcomes into reusable Genes and Capsules.
|
||||
- **Broader runtime coverage**: more first-class host integrations beyond Cursor / Claude Code / Codex / Kiro / opencode / OpenClaw.
|
||||
|
||||
## Star History
|
||||
|
||||
@@ -579,7 +556,7 @@ Clone it into any directory you like. If you use [OpenClaw](https://openclaw.com
|
||||
|
||||
## License
|
||||
|
||||
[MIT](https://opensource.org/licenses/MIT)
|
||||
[GPL-3.0-or-later](https://opensource.org/licenses/GPL-3.0)
|
||||
|
||||
> Core evolution engine modules are distributed in obfuscated form to protect intellectual property. Source: [EvoMap/evolver](https://github.com/EvoMap/evolver).
|
||||
|
||||
|
||||
+4
-31
@@ -178,7 +178,7 @@ evolver --loop
|
||||
| 循环模式 (`evolver --loop`) | 在守护进程循环中重复上述流程,带自适应休眠 |
|
||||
| 在 OpenClaw 中 | 宿主运行时解释 stdout 中的指令(如 `sessions_spawn(...)`) |
|
||||
|
||||
> **`--loop` 不是"实时辅助正在干活的 agent"的模式。** 循环模式用于后台自维护任务(validator 验证、worker 任务、ATP 商家自动交付、solidify),它的 stdout 是被 evolver 自己消费的,**不会**传给正在运行的 OpenClaw / Cursor / Claude Code agent——即使这些宿主已经安装,`sessions_spawn(...)` 指令在循环模式下也不会被它们接收。如果你想让 evolver 观察并辅助一次具体的 agent 会话,请在那个 agent 会话内部调用 `evolver run`(一次一轮),OpenClaw 会在这次运行中接管 stdout 指令。对 OpenClaw 用户还要特别注意:`AGENT_NAME`(或 `AGENT_SESSIONS_DIR`)必须指向真正在产生 session 的那个 agent 目录(`~/.openclaw/agents/<名字>/sessions/`),否则 evolver 会回退到读自己的日志,看上去就像在"空转"。
|
||||
> **`--loop` 不是"实时辅助正在干活的 agent"的模式。** 循环模式用于后台自维护任务(validator 验证、worker 任务、ATP 商家自动交付、solidify),它的 stdout 是被 evolver 自己消费的,**不会**传给正在运行的 OpenClaw / Cursor / Claude Code agent——即使这些宿主已经安装,`sessions_spawn(...)` 指令在循环模式下也不会被它们接收。如果你想让 evolver 观察并辅助一次具体的 agent 会话,请在那个 agent 会话内部调用 `evolver`(一次一轮),OpenClaw 会在这次运行中接管 stdout 指令。对 OpenClaw 用户还要特别注意:`AGENT_NAME`(或 `AGENT_SESSIONS_DIR`)必须指向真正在产生 session 的那个 agent 目录(`~/.openclaw/agents/<名字>/sessions/`),否则 evolver 会回退到读自己的日志,看上去就像在"空转"。
|
||||
|
||||
## 适用 / 不适用场景
|
||||
|
||||
@@ -416,7 +416,7 @@ EVOLVE_REPORT_TOOL=feishu-card
|
||||
永久关闭:
|
||||
|
||||
```bash
|
||||
EVOLVER_VALIDATOR_ENABLED=0 evolver run --loop
|
||||
EVOLVER_VALIDATOR_ENABLED=0 evolver --loop
|
||||
```
|
||||
|
||||
### 自动 GitHub Issue 上报
|
||||
@@ -426,7 +426,7 @@ EVOLVER_VALIDATOR_ENABLED=0 evolver run --loop
|
||||
| 变量 | 默认值 | 说明 |
|
||||
|------|--------|------|
|
||||
| `EVOLVER_AUTO_ISSUE` | `true` | 是否启用自动 issue 上报 |
|
||||
| `EVOLVER_ISSUE_REPO` | `autogame-17/capability-evolver` | 目标 GitHub 仓库(owner/repo) |
|
||||
| `EVOLVER_ISSUE_REPO` | `EvoMap/evolver` | 目标 GitHub 仓库(owner/repo) |
|
||||
| `EVOLVER_ISSUE_COOLDOWN_MS` | `86400000`(24 小时) | 同类错误签名的冷却期 |
|
||||
| `EVOLVER_ISSUE_MIN_STREAK` | `5` | 触发上报所需的最低连续失败次数 |
|
||||
|
||||
@@ -474,33 +474,6 @@ EVOLVER_VALIDATOR_ENABLED=0 evolver run --loop
|
||||
2. **稳定性优先**:如果近期错误率较高,强制进入修复模式,暂停创新功能。
|
||||
3. **环境检测**:外部集成(如 Git 同步)仅在检测到相应插件存在时才会启用。
|
||||
|
||||
## Public 发布
|
||||
|
||||
本仓库为公开发行版本。
|
||||
|
||||
- 构建公开产物:`npm run build`
|
||||
- 发布公开产物:`npm run publish:public`
|
||||
- 演练:`DRY_RUN=true npm run publish:public`
|
||||
|
||||
必填环境变量:
|
||||
|
||||
- `PUBLIC_REMOTE`(默认:`public`)
|
||||
- `PUBLIC_REPO`(例如 `EvoMap/evolver`)
|
||||
- `PUBLIC_OUT_DIR`(默认:`dist-public`)
|
||||
- `PUBLIC_USE_BUILD_OUTPUT`(默认:`true`)
|
||||
|
||||
可选环境变量:
|
||||
|
||||
- `SOURCE_BRANCH`(默认:`main`)
|
||||
- `PUBLIC_BRANCH`(默认:`main`)
|
||||
- `RELEASE_TAG`(例如 `v1.0.41`)
|
||||
- `RELEASE_TITLE`(例如 `v1.0.41 - GEP protocol`)
|
||||
- `RELEASE_NOTES` 或 `RELEASE_NOTES_FILE`
|
||||
- `GITHUB_TOKEN`(或 `GH_TOKEN` / `GITHUB_PAT`,用于创建 GitHub Release)
|
||||
- `RELEASE_SKIP`(`true` 则跳过创建 GitHub Release;默认会创建)
|
||||
- `RELEASE_USE_GH`(`true` 则使用 `gh` CLI,否则默认走 GitHub API)
|
||||
- `PUBLIC_RELEASE_ONLY`(`true` 则仅为已存在的 tag 创建 Release;不发布代码)
|
||||
|
||||
## 版本号规则(SemVer)
|
||||
|
||||
MAJOR.MINOR.PATCH
|
||||
@@ -557,4 +530,4 @@ MAJOR.MINOR.PATCH
|
||||
|
||||
## 许可证
|
||||
|
||||
[MIT](https://opensource.org/licenses/MIT)
|
||||
[GPL-3.0-or-later](https://opensource.org/licenses/GPL-3.0)
|
||||
|
||||
@@ -2046,7 +2046,7 @@ async function main() {
|
||||
} else if (resp.status >= 500) {
|
||||
console.error(' Server error. The Hub may be temporarily unavailable.');
|
||||
console.error(' Try again in a few minutes. If the issue persists, report at:');
|
||||
console.error(' https://github.com/autogame-17/evolver/issues');
|
||||
console.error(' https://github.com/EvoMap/evolver/issues');
|
||||
}
|
||||
if (isVerbose) {
|
||||
console.error('[Verbose] Endpoint: ' + endpoint);
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
* - Tag lookup is local-only (`git rev-parse`); CI must `git fetch
|
||||
* --tags` first if it runs on a shallow clone.
|
||||
* - `repoRoot` is injectable so tests don't need to monkey-patch the
|
||||
* module by re-evaluating source (autogame-17 PR #115 review).
|
||||
* module by re-evaluating source (see PR #115 review).
|
||||
*
|
||||
* Usage:
|
||||
* node scripts/check-changelog.js # CLI mode, exits 0/1
|
||||
|
||||
@@ -193,7 +193,7 @@ function geneToSkillMd(gene) {
|
||||
|
||||
lines.push('---');
|
||||
lines.push('');
|
||||
lines.push('*This Skill was generated by [Evolver](https://github.com/autogame-17/evolver) and is distributed under the [EvoMap Skill License (ESL-1.0)](https://evomap.ai/terms). Unauthorized redistribution, bulk scraping, or republishing is prohibited. See LICENSE file for full terms.*');
|
||||
lines.push('*This Skill was generated by [Evolver](https://github.com/EvoMap/evolver) and is distributed under the [EvoMap Skill License (ESL-1.0)](https://evomap.ai/terms). Unauthorized redistribution, bulk scraping, or republishing is prohibited. See LICENSE file for full terms.*');
|
||||
lines.push('');
|
||||
|
||||
return lines.join('\n');
|
||||
|
||||
Reference in New Issue
Block a user