vardoger

io.github.dstrupl由 GitHub 帳號 dstrupl 發布v0.4.0更新於 Oct 27, 2026

Personalize AI coding assistants by analyzing local conversation history. Runs on your machine.

已驗證STDIO僅桌面開發者工具AI 與機器學習

概覽

AI 產生的概覽

本機 Python 工具,讀取 AI 程式設計助手的對話歷史,並為其產生個人化規則檔。

可以做什麼
  • 讀取受支援助手(Cursor、Claude Code、Codex、OpenClaw、Copilot CLI、Devin、Windsurf、Cline)的本機對話歷史並擷取行為模式
  • 產生個人化的系統提示補充內容,並寫入該平台原生的規則檔
  • 檢查個人化內容是否為最新或已過期,並比較個人化前後的對話品質指標
  • 記錄對上一次產生結果的接受或拒絕回饋,拒絕時會回復到前一版本
  • 列出已儲存的產生結果,將選取的結果編譯成可攜的 AGENTS.md 設定,並在明確套用前預覽差異
適用情境
適合希望助手根據你既有的工作階段來貼近你的溝通風格、技術堆疊與工作流程的使用者,前提是願意讓宿主模型讀取這些本機對話紀錄。適用於使用受支援程式設計助手、並希望個人化步驟可重複且可審查的情境。
執行需求
以本機程序從 PyPI 安裝(建議使用 pipx);需要 Python 3.11+ 以及存在本機歷史檔的受支援宿主助手。可選環境變數 VARDOGER_MCP_PLATFORM 可覆寫偵測到的宿主平台。不需帳號、API 金鑰或後端服務。
安裝前請注意
它會讀取本機對話紀錄,分析由宿主助手執行,因此選取的片段會依該助手與模型供應商的資料政策處理。它會寫入宿主的規則或指示檔,profile write 僅在指定 --apply 時才修改檔案。首次執行可能讀取全部歷史,可用 --since 限制範圍。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 vardoger,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

vardoger

A cross-platform plugin for AI coding assistants (Cursor, Claude Code, OpenAI Codex, OpenClaw, GitHub Copilot CLI, Devin Local, legacy Windsurf, and Cline) that reads supported local conversation-history formats, extracts behavioral patterns, and generates personalized system prompt additions — making the assistant progressively better suited to how you work. Current format limitations are called out per platform below rather than silently reading undocumented stores.

History discovery, parsing, checkpoints, and generated rules stay on your machine. Analysis is performed by the host assistant you invoke, so selected conversation excerpts follow that assistant and model provider's data policy. Vardoger operates no backend and sends no telemetry.

Prerequisites

Python 3.11+

PlatformCommand
macOSbrew install [email protected] (install Homebrew) or python.org/downloads/macos
Debian / Ubuntusudo apt install python3
Fedorasudo dnf install python3
Windowswinget install Python.Python.3.13 or python.org/downloads/windows

pipx

Recommended for installing vardoger as an isolated CLI tool. Full instructions at pipx.pypa.io/stable/installation.

PlatformCommand
macOSbrew install pipx && pipx ensurepath
Debian / Ubuntusudo apt install pipx && pipx ensurepath
Fedorasudo dnf install pipx && pipx ensurepath
Windowsscoop install pipx or pip install --user pipx && pipx ensurepath

Quick Start

bash
pipx install vardogervardoger setup cursor        # or claude-code, codex, openclaw, copilot, devin, windsurf, cline

Then tell your assistant: "Personalize my assistant."

Looking for the in-app plugin listings? Track review status for each marketplace (PyPI, Cursor, Claude Code, Codex, Copilot CLI, Devin Desktop, Cline, ClawHub) in MARKETPLACE_STATUS.md. Vardoger is currently live on PyPI, the Claude Code community catalog, self-hosted Codex and Copilot marketplaces, McpMux, and the Official MCP Registry. The former Cursor listing is currently unavailable. ClawHub has regressed to 0.3.1 and is intentionally frozen because its mandatory MIT-0 terms conflict with this Apache-2.0 project. Current OpenClaw history has a live-accepted, opt-in full-read Gateway CLI path through the direct install.

Previous pre-releases. pipx install vardoger now resolves to the stable 0.4.0 release. The beta install paths below stay here for anyone still pinning an earlier release; new installs should not need them.

bash
# opt into future pre-releases (0.2.0bN, etc.):pipx install --pip-args="--pre" vardoger# or pin an older pre-release:pipx install vardoger==0.1.0b3# or run without installing:uvx vardoger --help

CLI Commands

CommandPurpose
vardoger setup <platform>Register vardoger with a platform (cursor, claude-code, codex, openclaw, copilot, devin, windsurf, cline).
vardoger status [--platform X] [--json]Report whether each personalization is fresh or stale.
vardoger prepare --platform X [--batch N] [--synthesize]Produce the batched prompts used by the AI-driven skill pipeline.
vardoger write --platform XRead synthesized personalization from stdin and write it to the platform's rules file (supports YAML-frontmatter confidence metadata).
vardoger feedback accept|reject --platform X [--reason TEXT]Record whether you kept or rejected the last generation. reject auto-reverts to the prior generation.
vardoger compare --platform X | --all [--window DAYS] [--json]Compare heuristic conversation-quality metrics before vs. after the latest personalization.
vardoger profile sources [--platform X] [--json]List saved generations and their stable one-based selection IDs.
vardoger profile preview --source X:N [--source Y:latest]Compile explicitly selected generations into a normalized cross-host profile and show the portable AGENTS.md diff without writing.
vardoger profile write --source X:N --target ./AGENTS.md [--apply]Show the same diff; update only Vardoger's fenced block when the user explicitly adds --apply.

How It Works

  1. Read — Parses supported conversation files already stored on disk, including opted-in Devin ATIF exports
  2. Analyze — The host AI model identifies patterns in your communication style, tech stack, workflow, and preferences
  3. Generate — Produces a system prompt addition tailored to you
  4. Deliver — Writes the addition to the platform's native config (.cursor/rules/, .claude/rules/, AGENTS.md, etc.)

First run vs. incremental runs. By default vardoger does not apply a time window — the first run reads your full local history (that is when the signal is richest and a windowed default would silently drop older sessions you never get a second chance to feed in). After that, a per-conversation checkpoint store at ~/.vardoger/state.json ensures every subsequent run only reprocesses new or changed conversations, so refreshes stay fast. If you have very large local history and want to cap the first-run cost, pass --since DAYS (e.g. vardoger prepare --platform cursor --since 90); use --full to force a full re-crawl that bypasses the checkpoint.

Cross-host profile compiler

The profile compiler combines only existing Vardoger generations that you select; it does not silently reopen raw transcripts. Generation indexes are one-based, while latest resolves to the newest saved generation for that platform:

bash
# Discover the reviewed generations available for selection.vardoger profile sources
# Read-only: render the profile, audit summary, and exact AGENTS.md diff.vardoger profile preview \  --source claude-code:latest \  --source codex:2 \  --target ./AGENTS.md
# Optional controls are applied before rendering and included in the audit.vardoger profile preview \  --source codex:latest \  --min-confidence medium \  --max-age 180 \  --redact '@example\.com' \  --target ./AGENTS.md
# Still preview-only without --apply. This is the explicit write step.vardoger profile write \  --source claude-code:latest \  --source codex:2 \  --target ./AGENTS.md \  --apply

The normalized JSON audit is available with profile preview --json. It records source platform, generation, output hash/path, observation time, recency, confidence, conflicts, supersession, and exclusions. Opposing rules such as “Prefer tabs” and “Avoid tabs” are withheld from active instructions until reviewed. Writes preserve everything outside <!-- vardoger-profile:start --> and <!-- vardoger-profile:end -->.

Supported Platforms

PlatformHistory SourcePrompt DeliveryIntegration
CursorAgent transcript JSONL.cursor/rules/vardoger.mdcMarketplace plugin + MCP
Claude CodeSession JSONL.claude/rules/vardoger.mdCommunity/custom plugin
OpenAI CodexSession rollout JSONL~/.codex/AGENTS.mdRepository marketplace plugin
OpenClawLegacy JSONL or opt-in full read through official Gateway CLI; private SQLite is never queried~/.openclaw/skills/vardoger-personalization/SKILL.mdAnalyzer + Gateway compatibility status
GitHub Copilot CLI~/.copilot/session-state/<session-id>/events.jsonl plus legacy flat JSONL~/.copilot/copilot-instructions.md (global) or <project>/.github/copilot-instructions.md (project) — managed inside a <!-- vardoger:start --> fenced sectionCustom plugin + published skill
Devin LocalUser-enabled Devin CLI --export ATIF JSON under ~/.vardoger/imports/devin/~/.config/devin/AGENTS.md (global, fenced section) or <project>/.devin/rules/vardoger.mdATIF + skill + rules integration
Legacy Windsurf / Cascade~/.codeium/windsurf/**/*.jsonl~/.codeium/windsurf/memories/global_rules.md (global, fenced section) or <project>/.windsurf/rules/vardoger.md (project, dedicated file)Legacy Cascade skill + CLI + MCP
ClineVS Code globalStorage/.../tasks/*/api_conversation_history.json~/Documents/Cline/Rules/vardoger.md (global) or the existing .clinerules project layoutsCLI + MCP

Development

Requires uv (Python package manager):

bash
git clone https://github.com/dstrupl/vardoger.gitcd vardogeruv sync.venv/bin/vardoger --help

Project Layout

src/vardoger/          # shared core — history reading, analysis, prompt generation.agents/plugins/       # repository-level Codex marketplace catalogplugins/_shared/       # shared analysis/personalization skill authored onceplugins/cursor/        # Cursor MCP server config, install scriptplugins/claude-code/   # Claude Code plugin manifest, skillsplugins/codex/         # Codex plugin manifest, skillsplugins/openclaw/      # OpenClaw skillplugins/copilot/       # GitHub Copilot CLI plugin manifest, skillsplugins/devin/         # Devin Local ATIF export, skill, and rules integrationplugins/windsurf/      # Legacy Cascade install snippet and rules deliveryplugins/cline/         # Cline integration and marketplace install guidancetests/                 # all tests, mirroring src/ structure
  • Platform-agnostic logic lives under src/vardoger/.
  • Platform-specific integration (manifests, skills, install scripts) lives under plugins/<platform>/.
  • Tests live in tests/, mirroring the source tree.

See AGENTS.md for full coding standards and quality checks.

Quality gates

CI enforces a combined quality bar on every push and pull request:

  • ruff check / ruff format --check — lint (incl. complexity, pylint, return, pathlib, tryceratops rules) and formatting.
  • mypy src/ — strict type checking.
  • pytest --cov=vardoger --cov-fail-under=80 — tests across Python 3.11–3.13 with a combined 80% coverage floor.
  • A parallel security job runs bandit -r src/ and pip-audit --skip-editable to catch common code smells and dependency CVEs.

Run the full bundle locally before pushing:

bash
uv run ruff check . && uv run ruff format --check . && uv run mypy src/ && uv run pytest --cov=vardoger --cov-fail-under=80

Contributing

Contributions are welcome. Short version:

  1. Fork dstrupl/vardoger on GitHub and clone your fork.
  2. uv sync and create a topic branch.
  3. Make your changes with tests and run the quality-gate one-liner above.
  4. Push to your fork and open a PR against main.

CI (test on Python 3.11/3.12/3.13 plus a security job) will run automatically on the PR. First-time contributors may need a maintainer to click Approve and run before the first workflow execution.

See CONTRIBUTING.md for the full walkthrough and AGENTS.md for coding standards and commit-message conventions.

Releasing to PyPI

CI runs automatically on every push and PR (lint, type check, tests across Python 3.11–3.13). To publish a new version:

  1. Bump the package, generated setup manifests, platform manifests, and registry metadata together; close the matching section in CHANGELOG.md.
  2. Run the complete quality, security, plugin-validation, and build checks.
  3. Commit and push to main, then wait for all required checks.
  4. Create an annotated vX.Y.Z tag and publish the matching GitHub release.

The publish.yml workflow builds the package and uploads it to PyPI via trusted publishers (no API tokens needed). Once complete, pipx install vardoger will pull the new version.

Status

Public beta. Version 0.4.0 is published on PyPI and tagged on GitHub; this source tree tracks that released version. See MARKETPLACE_STATUS.md for live listings and the remaining official-directory submissions. See MANUAL_SUBMISSION_RUNBOOK.md for the owner-only submission, review, and publication steps. See PRD.md for the full product requirements document.

Privacy and security

  • PRIVACY.md — what vardoger reads, writes, and (importantly) does not send anywhere.
  • SECURITY.md — how to report a vulnerability privately.

License

Licensed under the Apache License, Version 2.0. See also the public Privacy Policy and Terms of Use.

來源:README.md,提交 b20a0a1

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

2
  1. v0.4.0最新Sep 27, 2026
  2. v0.3.2Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分