titanwings/distillyPublic

Distilly — Distill how they think into reusable Skills for any Agent or Bot. Formerly Colleague Skill(原同事 Skill).

AI summary: A CLI toolchain for generating interactive AI personas based on chat logs, documentation, and external research.

Stars
24.6K
+43 today
Forks
2.1K
Watchers
63
Open issues
20
Open PRs
13
Contributors
~4
Commits
166
Branches
3

TypeScriptMITCreated Mar 30, 2026Last push 4d ago+259 stars this week+3.8K this month

Star history

since Mar 29, 2026
010K20KMar 2026May 2026Jul 2026Sep 2026
24.6K stars as of Sep 10, 2026, tracked back to Mar 29, 2026. Historical curve reconstructed from public GitHub event archives, calibrated to the current total.

Contribution activity

commits per day, last 52 weeks
SepOctNovDecJanFebMarAprMayJunJulAugSepMonWedFri2025-09-14: 0 commits2025-09-15: 0 commits2025-09-16: 0 commits2025-09-17: 0 commits2025-09-18: 0 commits2025-09-19: 0 commits2025-09-20: 0 commits2025-09-21: 0 commits2025-09-22: 0 commits2025-09-23: 0 commits2025-09-24: 0 commits2025-09-25: 0 commits2025-09-26: 0 commits2025-09-27: 0 commits2025-09-28: 0 commits2025-09-29: 0 commits2025-09-30: 0 commits2025-10-01: 0 commits2025-10-02: 0 commits2025-10-03: 0 commits2025-10-04: 0 commits2025-10-05: 0 commits2025-10-06: 0 commits2025-10-07: 0 commits2025-10-08: 0 commits2025-10-09: 0 commits2025-10-10: 0 commits2025-10-11: 0 commits2025-10-12: 0 commits2025-10-13: 0 commits2025-10-14: 0 commits2025-10-15: 0 commits2025-10-16: 0 commits2025-10-17: 0 commits2025-10-18: 0 commits2025-10-19: 0 commits2025-10-20: 0 commits2025-10-21: 0 commits2025-10-22: 0 commits2025-10-23: 0 commits2025-10-24: 0 commits2025-10-25: 0 commits2025-10-26: 0 commits2025-10-27: 0 commits2025-10-28: 0 commits2025-10-29: 0 commits2025-10-30: 0 commits2025-10-31: 0 commits2025-11-01: 0 commits2025-11-02: 0 commits2025-11-03: 0 commits2025-11-04: 0 commits2025-11-05: 0 commits2025-11-06: 0 commits2025-11-07: 0 commits2025-11-08: 0 commits2025-11-09: 0 commits2025-11-10: 0 commits2025-11-11: 0 commits2025-11-12: 0 commits2025-11-13: 0 commits2025-11-14: 0 commits2025-11-15: 0 commits2025-11-16: 0 commits2025-11-17: 0 commits2025-11-18: 0 commits2025-11-19: 0 commits2025-11-20: 0 commits2025-11-21: 0 commits2025-11-22: 0 commits2025-11-23: 0 commits2025-11-24: 0 commits2025-11-25: 0 commits2025-11-26: 0 commits2025-11-27: 0 commits2025-11-28: 0 commits2025-11-29: 0 commits2025-11-30: 0 commits2025-12-01: 0 commits2025-12-02: 0 commits2025-12-03: 0 commits2025-12-04: 0 commits2025-12-05: 0 commits2025-12-06: 0 commits2025-12-07: 0 commits2025-12-08: 0 commits2025-12-09: 0 commits2025-12-10: 0 commits2025-12-11: 0 commits2025-12-12: 0 commits2025-12-13: 0 commits2025-12-14: 0 commits2025-12-15: 0 commits2025-12-16: 0 commits2025-12-17: 0 commits2025-12-18: 0 commits2025-12-19: 0 commits2025-12-20: 0 commits2025-12-21: 0 commits2025-12-22: 0 commits2025-12-23: 0 commits2025-12-24: 0 commits2025-12-25: 0 commits2025-12-26: 0 commits2025-12-27: 0 commits2025-12-28: 0 commits2025-12-29: 0 commits2025-12-30: 0 commits2025-12-31: 0 commits2026-01-01: 0 commits2026-01-02: 0 commits2026-01-03: 0 commits2026-01-04: 0 commits2026-01-05: 0 commits2026-01-06: 0 commits2026-01-07: 0 commits2026-01-08: 0 commits2026-01-09: 0 commits2026-01-10: 0 commits2026-01-11: 0 commits2026-01-12: 0 commits2026-01-13: 0 commits2026-01-14: 0 commits2026-01-15: 0 commits2026-01-16: 0 commits2026-01-17: 0 commits2026-01-18: 0 commits2026-01-19: 0 commits2026-01-20: 0 commits2026-01-21: 0 commits2026-01-22: 0 commits2026-01-23: 0 commits2026-01-24: 0 commits2026-01-25: 0 commits2026-01-26: 0 commits2026-01-27: 0 commits2026-01-28: 0 commits2026-01-29: 0 commits2026-01-30: 0 commits2026-01-31: 0 commits2026-02-01: 0 commits2026-02-02: 0 commits2026-02-03: 0 commits2026-02-04: 0 commits2026-02-05: 0 commits2026-02-06: 0 commits2026-02-07: 0 commits2026-02-08: 0 commits2026-02-09: 0 commits2026-02-10: 0 commits2026-02-11: 0 commits2026-02-12: 0 commits2026-02-13: 0 commits2026-02-14: 0 commits2026-02-15: 0 commits2026-02-16: 0 commits2026-02-17: 0 commits2026-02-18: 0 commits2026-02-19: 0 commits2026-02-20: 0 commits2026-02-21: 0 commits2026-02-22: 0 commits2026-02-23: 0 commits2026-02-24: 0 commits2026-02-25: 0 commits2026-02-26: 0 commits2026-02-27: 0 commits2026-02-28: 0 commits2026-03-01: 0 commits2026-03-02: 0 commits2026-03-03: 0 commits2026-03-04: 0 commits2026-03-05: 0 commits2026-03-06: 0 commits2026-03-07: 0 commits2026-03-08: 0 commits2026-03-09: 0 commits2026-03-10: 0 commits2026-03-11: 0 commits2026-03-12: 0 commits2026-03-13: 0 commits2026-03-14: 0 commits2026-03-15: 0 commits2026-03-16: 0 commits2026-03-17: 0 commits2026-03-18: 0 commits2026-03-19: 0 commits2026-03-20: 0 commits2026-03-21: 0 commits2026-03-22: 0 commits2026-03-23: 0 commits2026-03-24: 0 commits2026-03-25: 0 commits2026-03-26: 0 commits2026-03-27: 0 commits2026-03-28: 0 commits2026-03-29: 0 commits2026-03-30: 20 commits2026-03-31: 9 commits2026-04-01: 7 commits2026-04-02: 2 commits2026-04-03: 0 commits2026-04-04: 4 commits2026-04-05: 1 commit2026-04-06: 0 commits2026-04-07: 10 commits2026-04-08: 17 commits2026-04-09: 0 commits2026-04-10: 0 commits2026-04-11: 0 commits2026-04-12: 2 commits2026-04-13: 5 commits2026-04-14: 2 commits2026-04-15: 3 commits2026-04-16: 1 commit2026-04-17: 3 commits2026-04-18: 1 commit2026-04-19: 2 commits2026-04-20: 2 commits2026-04-21: 3 commits2026-04-22: 1 commit2026-04-23: 0 commits2026-04-24: 0 commits2026-04-25: 0 commits2026-04-26: 0 commits2026-04-27: 3 commits2026-04-28: 1 commit2026-04-29: 1 commit2026-04-30: 0 commits2026-05-01: 0 commits2026-05-02: 0 commits2026-05-03: 0 commits2026-05-04: 0 commits2026-05-05: 0 commits2026-05-06: 1 commit2026-05-07: 0 commits2026-05-08: 0 commits2026-05-09: 0 commits2026-05-10: 0 commits2026-05-11: 1 commit2026-05-12: 0 commits2026-05-13: 0 commits2026-05-14: 0 commits2026-05-15: 0 commits2026-05-16: 0 commits2026-05-17: 0 commits2026-05-18: 1 commit2026-05-19: 0 commits2026-05-20: 0 commits2026-05-21: 0 commits2026-05-22: 0 commits2026-05-23: 0 commits2026-05-24: 0 commits2026-05-25: 0 commits2026-05-26: 0 commits2026-05-27: 0 commits2026-05-28: 0 commits2026-05-29: 0 commits2026-05-30: 0 commits2026-05-31: 0 commits2026-06-01: 5 commits2026-06-02: 0 commits2026-06-03: 0 commits2026-06-04: 0 commits2026-06-05: 0 commits2026-06-06: 0 commits2026-06-07: 0 commits2026-06-08: 0 commits2026-06-09: 0 commits2026-06-10: 0 commits2026-06-11: 0 commits2026-06-12: 0 commits2026-06-13: 0 commits2026-06-14: 0 commits2026-06-15: 0 commits2026-06-16: 0 commits2026-06-17: 0 commits2026-06-18: 0 commits2026-06-19: 0 commits2026-06-20: 0 commits2026-06-21: 0 commits2026-06-22: 0 commits2026-06-23: 0 commits2026-06-24: 0 commits2026-06-25: 0 commits2026-06-26: 0 commits2026-06-27: 0 commits2026-06-28: 0 commits2026-06-29: 0 commits2026-06-30: 0 commits2026-07-01: 0 commits2026-07-02: 0 commits2026-07-03: 0 commits2026-07-04: 0 commits2026-07-05: 0 commits2026-07-06: 0 commits2026-07-07: 0 commits2026-07-08: 0 commits2026-07-09: 0 commits2026-07-10: 0 commits2026-07-11: 0 commits2026-07-12: 0 commits2026-07-13: 0 commits2026-07-14: 0 commits2026-07-15: 0 commits2026-07-16: 0 commits2026-07-17: 0 commits2026-07-18: 0 commits2026-07-19: 0 commits2026-07-20: 0 commits2026-07-21: 0 commits2026-07-22: 0 commits2026-07-23: 0 commits2026-07-24: 0 commits2026-07-25: 0 commits2026-07-26: 0 commits2026-07-27: 0 commits2026-07-28: 0 commits2026-07-29: 0 commits2026-07-30: 0 commits2026-07-31: 0 commits2026-08-01: 0 commits2026-08-02: 0 commits2026-08-03: 0 commits2026-08-04: 0 commits2026-08-05: 0 commits2026-08-06: 0 commits2026-08-07: 0 commits2026-08-08: 0 commits2026-08-09: 0 commits2026-08-10: 0 commits2026-08-11: 1 commit2026-08-12: 0 commits2026-08-13: 3 commits2026-08-14: 0 commits2026-08-15: 0 commits2026-08-16: 0 commits2026-08-17: 0 commits2026-08-18: 2 commits2026-08-19: 1 commit2026-08-20: 7 commits2026-08-21: 7 commits2026-08-22: 0 commits2026-08-23: 0 commits2026-08-24: 0 commits2026-08-25: 0 commits2026-08-26: 0 commits2026-08-27: 0 commits2026-08-28: 0 commits2026-08-29: 0 commits2026-08-30: 3 commits2026-08-31: 13 commits2026-09-01: 6 commits2026-09-02: 3 commits2026-09-03: 6 commits2026-09-04: 2 commits2026-09-05: 1 commit2026-09-06: 1 commit2026-09-07: 0 commits2026-09-08: 0 commits2026-09-09: 0 commits2026-09-10: 0 commits2026-09-11: 0 commits2026-09-12: 0 commits
164 commits in the last yearLessMore

Signals and awards

derived from tracked data
  • Widely adopted

    24,568 stars

  • Permissive license

    MIT

  • Continuous integration

    Automated checks passing

  • Repeat trending

    7 trending appearances

What distilly does

Dot-skill (colleague-skill) is a framework that distills specific human personas—ranging from coworkers to celebrities—into installable AI 'skills' compatible with agents like Claude Code and OpenClaw. It ingests diverse data sources, such as Feishu/Slack message histories, PDFs, and video subtitles, to extract a subject's decision-making heuristics, expression DNA, and technical playbook. The system then generates a universal persona base, augmenting it with specialized modules like 'Work Skill' for technical colleagues or 'Research Dossier' for public figures. This allows developers to interactively query an AI that authentically mimics the knowledge and attitude of the distilled individual.

AI developers, knowledge managers, and researchers looking to create highly specific, data-driven AI personas for local coding assistants.

  • Cross-agent compatibility: Generates portable skills that can be installed directly into Claude Code, OpenClaw, Hermes, or Codex.
  • Multi-source data ingestion: Automatically parses message histories from Slack, Feishu, WeChat (via SQLite), alongside PDFs and Markdown.
  • Layered persona architecture: Constructs personalities using a 6-layer model, separating core rules and identity from specific domain knowledge.
  • Celebrity research pipeline: Includes automated bash scripts to download subtitles, convert to transcripts, and synthesize a deep research dossier.
  • Live conversation correction: Allows users to interactively correct the generated persona's behavior, which immediately updates its foundational rules.

Where teams use it

Code Review Simulation

Developers ingest the PR history of a strict senior engineer to create an AI reviewer that strictly enforces team conventions.

Public Figure Emulation

Researchers use the subtitle pipeline to distill a tech CEO's interviews into an interactive mental-model consultant.

Institutional Knowledge Preservation

Teams archive the Slack history and docs of a departing lead developer to retain an interactive 'playbook' of their architecture decisions.

Personal AI Customization

Users feed personal chat histories to generate an AI companion that matches the specific communication style of a friend.

Getting started: git clone https://github.com/titanwings/colleague-skill ~/.claude/skills/dot-skill

README

distilly-plugin branch
Distilly — Distill how they think into Person Profiles for Agents

Distilly

Distill how they think into Person Profiles for Agents.

Colleague Skill / colleague-skill (original name)

License: MIT Node.js Codex Preview

Distilly is a local-first product for turning a person's source material, working habits, judgment, and voice into a versioned Person Profile for Agents. The profile can be recalled temporarily during a run or explicitly installed as a long-lived host Skill. The storage authority stays local; no additional model API key is required.

This repository now defaults to the unreleased 0.1.0-preview.1 Developer Preview on distilly-plugin. Codex, OpenClaw 2026.3.24, and Hermes v0.9.0 each have an immutable real-host transport-capacity fixture. The OpenClaw and Hermes measurements use a deterministic synthetic fixture server through the real host executable, model, and MCP transport; they do not by themselves certify packaged restart or the full product lifecycle. Setup remains fail-closed for any unrecorded host version or changed release tuple. It is the default GitHub branch, but it is not a tagged release or an npm package yet.

Chinese · Español · Deutsch · 日本語 · 한국어 · Português · Русский

Install the Developer Preview

For an agent

Give your coding agent the following task and let it run the commands in a fresh checkout:

Install the Distilly Developer Preview from the distilly-plugin branch, build it with Node 22.19+ (or Node 24), run distilly setup --host codex, run distilly doctor --host codex, and report the result. Do not modify another branch.

The exact checkout and setup commands are shown below so the agent can verify every step.

For a human

Requirements: Node.js 22.19+ or 24, pnpm 10.32+, and a locally installed Codex CLI. From a terminal:

git clone --branch distilly-plugin https://github.com/titanwings/distilly.git
cd distilly
corepack enable
pnpm install --frozen-lockfile
pnpm run build
node packages/cli/lib/bin.js setup --host codex
node packages/cli/lib/bin.js doctor --host codex

Restart Codex after setup. The launcher registers the self-contained Plugin and its five MCP tools. To remove the host integration while keeping all local people, profiles, and source data:

node packages/cli/lib/bin.js uninstall --host codex

To install one approved profile as a persistent Skill after a profile has been created, use its exact subject id:

node packages/cli/lib/bin.js install subject_<32 lowercase hex characters> --host codex

Host compatibility and explicit Legacy fallback

Codex uses the native Plugin preview above. The Preview also includes compatibility bindings for OpenClaw and Hermes:

  • OpenClaw loads the Claude-compatible bundle from ~/.openclaw/extensions/distilly and its real .mcp.json. Check discovery with openclaw plugins inspect distilly --json.
  • Hermes installs the canonical Skill at ~/.hermes/skills/distilly, a managed wrapper at ~/.distilly/bin/distilly-hermes, and an MCP entry in ~/.hermes/config.yaml. resources and prompts are disabled so the exposed surface remains five tools; check it with hermes mcp test distilly.

The CLI recognizes both hosts and enables setup when the installed version matches the recorded real-host transport fixture. The current net budgets, measured in isolated clean sessions with openai-codex/gpt-5.4, are 65,536 serialized bytes for OpenClaw and 49,752 for Hermes (the same conservative byte/token accounting used by the Codex fixture). These are transport/value lower bounds for the recorded probe, not a guarantee of remaining context in every model or user session. Any unrecorded version, release digest, tool descriptor, or serializer tuple returns host_unsupported before writing an unverified integration. There is no automatic switch to the legacy implementation.

Until a host has a verified Plugin binding, you can explicitly choose the maintained dot-skill branch as a Legacy Skill compatibility mode:

Install Distilly in Legacy Skill compatibility mode from the dot-skill branch into this host's normal Skills directory, using a clean checkout whose final directory is named distilly. Verify discovery and report the installed Git commit. Do not run Plugin setup or claim SQLite, five-tool MCP, Panel, or Plugin lifecycle support.

For a manual install, replace <target-directory> with the complete final path in the detailed install guide, including the last distilly component, and create its parent first:

git clone --single-branch --branch dot-skill --depth 1 \
  https://github.com/titanwings/distilly.git \
  <target-directory>
git -C <target-directory> rev-parse HEAD

This is an explicit, separate file-based implementation—not an automatic runtime fallback. It does not share a supported data model with the Plugin, and a failed Plugin preflight never switches modes. The compatibility promise currently covers local files and pasted text only. Do not enable legacy collectors while the Plugin uses the same home directory: current legacy collectors can write credential configuration into the same ~/.distilly/ namespace and remain outside the Preview's reviewed security boundary. Keep exactly one distilly active in any host discovery scope and verify which copy the host loaded.

The first usable flow

On Codex, the complete flow below is verified. OpenClaw 2026.3.24 and Hermes v0.9.0 have the same briefing transport path verified against their recorded capacity fixture; their packaged restart, long-lived Skill, and uninstall lifecycle checks remain separate. Restart the selected host and ask it to research and distill a person. Supply only the files, text, or public URLs you want included. Distilly then:

  1. resolves or creates the person;
  2. imports the selected material with deterministic local parsers;
  3. creates a pending research job and a complete evidence-bound briefing;
  4. commits a versioned Person Profile;
  5. returns the profile or a complete temporary prompt for the current run;
  6. accepts an explicit correction and sends a candidate to review;
  7. lets you promote, reject, or roll back the candidate in the local Panel; and
  8. installs the approved profile as a self-contained host Skill when you ask it to.

The model-facing surface remains exactly five MCP tools:

distilly_get · distilly_ingest · distilly_pending · distilly_commit · distilly_correct

Distilly never silently truncates a complete briefing or profile prompt. If a verified host budget cannot carry the complete value, it reports a bounded capacity error with measurements and keeps the stored data unchanged.

Host status

Host Native Plugin Current compatibility route
Codex Fully verified in this release branch Native Plugin
Claude Code Binding included; exact host fixture still needed Explicit dot-skill Legacy Skill
OpenClaw Transport-capacity fixture recorded for 2026.3.24 (65,536-byte net budget); lifecycle pending Claude-compatible bundle + discovery smoke
Hermes Transport-capacity fixture recorded for v0.9.0 (49,752-byte net budget); lifecycle pending Managed Skill + MCP configuration
DeepSeek Harness (DSH) Community binding planned Explicit dot-skill Legacy Skill
Pi agent Community binding planned Explicit dot-skill Legacy Skill
Grok Build Community binding planned Explicit dot-skill Legacy Skill
OpenCode Community binding planned Explicit dot-skill Legacy Skill
Grok Bot Community binding planned Manual saved/private Skill only; local repository import is not claimed

Host compatibility is a binding concern. Legacy Skill discovery is useful continuity, but it does not make a host a verified Plugin target.

Local material formats

The first Preview accepts explicit local TXT, Markdown, JSON, and SRT/VTT files. It also accepts pasted text and public URLs through the host's visible research flow. Files are read only from the paths or sources the user supplies; symlinked selected files and duplicate file names are rejected. PDF, email, provider exports, and hosted connectors are follow-up work.

📣 2026-09 update: help expand coding-agent Plugins

Codex, OpenClaw, and Hermes now have real host/version capacity fixtures. We need community support to provide the same evidence for Claude Code, DeepSeek Harness (DSH), Pi agent, Grok Build, OpenCode, and Grok Bot, then to build and validate their coding-agent Plugin packages. I will actively review those contributions and keep the public contracts, release digests, and host behavior aligned.

See the full call for contributors in UPDATES.md and the current priorities in ROADMAP.md.

Project documents

Distilly is released under the MIT License. Created by @titanwings.

View on GitHub

Recent activity

commits and pull requests

Recent open issues

view all

Discussions

all 2

Releases and announcements

1 total
  1. demov0.01Mar 30, 2026pre-release

    demo

Code frequency

additions and deletions
+108.8K-108.8KWeek of 2026-03-29: +15,283 linesWeek of 2026-03-29: -6,100 linesWeek of 2026-04-05: +513 linesWeek of 2026-04-05: -141 linesWeek of 2026-04-12: +15,672 linesWeek of 2026-04-12: -4,945 linesWeek of 2026-04-19: +3,014 linesWeek of 2026-04-19: -2,005 linesWeek of 2026-04-26: +102 linesWeek of 2026-04-26: -100 linesWeek of 2026-05-03: +3 linesWeek of 2026-05-03: -3 linesWeek of 2026-05-10: +27 linesWeek of 2026-05-10: -27 linesWeek of 2026-05-17: +51 linesWeek of 2026-05-17: -3 linesWeek of 2026-05-24: +0 linesWeek of 2026-05-24: -0 linesWeek of 2026-05-31: +47 linesWeek of 2026-05-31: -16 linesWeek of 2026-06-07: +0 linesWeek of 2026-06-07: -0 linesWeek of 2026-06-14: +0 linesWeek of 2026-06-14: -0 linesWeek of 2026-06-21: +0 linesWeek of 2026-06-21: -0 linesWeek of 2026-06-28: +0 linesWeek of 2026-06-28: -0 linesWeek of 2026-07-05: +0 linesWeek of 2026-07-05: -0 linesWeek of 2026-07-12: +0 linesWeek of 2026-07-12: -0 linesWeek of 2026-07-19: +0 linesWeek of 2026-07-19: -0 linesWeek of 2026-07-26: +0 linesWeek of 2026-07-26: -0 linesWeek of 2026-08-02: +0 linesWeek of 2026-08-02: -0 linesWeek of 2026-08-09: +120 linesWeek of 2026-08-09: -60 linesWeek of 2026-08-16: +108,796 linesWeek of 2026-08-16: -6,651 linesWeek of 2026-08-23: +0 linesWeek of 2026-08-23: -0 linesWeek of 2026-08-30: +50,787 linesWeek of 2026-08-30: -48,281 linesWeek of 2026-09-06: +26 linesWeek of 2026-09-06: -2 linesMar 29, 2026Sep 6, 2026
+194.4K lines added, -68.3K removed over the last year.

Commits per week

last 52 weeks
420Week of 2025-09-14: 0 commitsWeek of 2025-09-21: 0 commitsWeek of 2025-09-28: 0 commitsWeek of 2025-10-05: 0 commitsWeek of 2025-10-12: 0 commitsWeek of 2025-10-19: 0 commitsWeek of 2025-10-26: 0 commitsWeek of 2025-11-02: 0 commitsWeek of 2025-11-09: 0 commitsWeek of 2025-11-16: 0 commitsWeek of 2025-11-23: 0 commitsWeek of 2025-11-30: 0 commitsWeek of 2025-12-07: 0 commitsWeek of 2025-12-14: 0 commitsWeek of 2025-12-21: 0 commitsWeek of 2025-12-28: 0 commitsWeek of 2026-01-04: 0 commitsWeek of 2026-01-11: 0 commitsWeek of 2026-01-18: 0 commitsWeek of 2026-01-25: 0 commitsWeek of 2026-02-01: 0 commitsWeek of 2026-02-08: 0 commitsWeek of 2026-02-15: 0 commitsWeek of 2026-02-22: 0 commitsWeek of 2026-03-01: 0 commitsWeek of 2026-03-08: 0 commitsWeek of 2026-03-15: 0 commitsWeek of 2026-03-22: 0 commitsWeek of 2026-03-29: 42 commitsWeek of 2026-04-05: 28 commitsWeek of 2026-04-12: 17 commitsWeek of 2026-04-19: 8 commitsWeek of 2026-04-26: 5 commitsWeek of 2026-05-03: 1 commitsWeek of 2026-05-10: 1 commitsWeek of 2026-05-17: 1 commitsWeek of 2026-05-24: 0 commitsWeek of 2026-05-31: 5 commitsWeek of 2026-06-07: 0 commitsWeek of 2026-06-14: 0 commitsWeek of 2026-06-21: 0 commitsWeek of 2026-06-28: 0 commitsWeek of 2026-07-05: 0 commitsWeek of 2026-07-12: 0 commitsWeek of 2026-07-19: 0 commitsWeek of 2026-07-26: 0 commitsWeek of 2026-08-02: 0 commitsWeek of 2026-08-09: 4 commitsWeek of 2026-08-16: 17 commitsWeek of 2026-08-23: 0 commitsWeek of 2026-08-30: 34 commitsWeek of 2026-09-06: 1 commitsSep 14, 2025Sep 6, 2026
164 commits in the last 52 weeks.

When work happens

weekday and hour
SunMonTueWedThuFriSat036912151821Sun 0:00 — 1 commitsSun 1:00 — 1 commitsSun 2:00 — 0 commitsSun 3:00 — 0 commitsSun 4:00 — 0 commitsSun 5:00 — 0 commitsSun 6:00 — 0 commitsSun 7:00 — 0 commitsSun 8:00 — 0 commitsSun 9:00 — 0 commitsSun 10:00 — 0 commitsSun 11:00 — 0 commitsSun 12:00 — 0 commitsSun 13:00 — 0 commitsSun 14:00 — 1 commitsSun 15:00 — 0 commitsSun 16:00 — 0 commitsSun 17:00 — 0 commitsSun 18:00 — 0 commitsSun 19:00 — 2 commitsSun 20:00 — 1 commitsSun 21:00 — 2 commitsSun 22:00 — 1 commitsSun 23:00 — 0 commitsMon 0:00 — 0 commitsMon 1:00 — 0 commitsMon 2:00 — 0 commitsMon 3:00 — 0 commitsMon 4:00 — 0 commitsMon 5:00 — 0 commitsMon 6:00 — 0 commitsMon 7:00 — 0 commitsMon 8:00 — 0 commitsMon 9:00 — 0 commitsMon 10:00 — 0 commitsMon 11:00 — 6 commitsMon 12:00 — 6 commitsMon 13:00 — 4 commitsMon 14:00 — 3 commitsMon 15:00 — 11 commitsMon 16:00 — 7 commitsMon 17:00 — 3 commitsMon 18:00 — 2 commitsMon 19:00 — 2 commitsMon 20:00 — 1 commitsMon 21:00 — 2 commitsMon 22:00 — 2 commitsMon 23:00 — 2 commitsTue 0:00 — 1 commitsTue 1:00 — 0 commitsTue 2:00 — 0 commitsTue 3:00 — 0 commitsTue 4:00 — 0 commitsTue 5:00 — 0 commitsTue 6:00 — 0 commitsTue 7:00 — 0 commitsTue 8:00 — 0 commitsTue 9:00 — 0 commitsTue 10:00 — 4 commitsTue 11:00 — 1 commitsTue 12:00 — 1 commitsTue 13:00 — 3 commitsTue 14:00 — 1 commitsTue 15:00 — 1 commitsTue 16:00 — 0 commitsTue 17:00 — 0 commitsTue 18:00 — 7 commitsTue 19:00 — 0 commitsTue 20:00 — 5 commitsTue 21:00 — 2 commitsTue 22:00 — 8 commitsTue 23:00 — 0 commitsWed 0:00 — 0 commitsWed 1:00 — 0 commitsWed 2:00 — 0 commitsWed 3:00 — 0 commitsWed 4:00 — 0 commitsWed 5:00 — 0 commitsWed 6:00 — 0 commitsWed 7:00 — 0 commitsWed 8:00 — 0 commitsWed 9:00 — 0 commitsWed 10:00 — 1 commitsWed 11:00 — 2 commitsWed 12:00 — 2 commitsWed 13:00 — 2 commitsWed 14:00 — 1 commitsWed 15:00 — 7 commitsWed 16:00 — 0 commitsWed 17:00 — 0 commitsWed 18:00 — 0 commitsWed 19:00 — 2 commitsWed 20:00 — 17 commitsWed 21:00 — 0 commitsWed 22:00 — 0 commitsWed 23:00 — 0 commitsThu 0:00 — 1 commitsThu 1:00 — 1 commitsThu 2:00 — 0 commitsThu 3:00 — 0 commitsThu 4:00 — 0 commitsThu 5:00 — 0 commitsThu 6:00 — 0 commitsThu 7:00 — 0 commitsThu 8:00 — 0 commitsThu 9:00 — 0 commitsThu 10:00 — 0 commitsThu 11:00 — 2 commitsThu 12:00 — 0 commitsThu 13:00 — 1 commitsThu 14:00 — 0 commitsThu 15:00 — 0 commitsThu 16:00 — 0 commitsThu 17:00 — 2 commitsThu 18:00 — 2 commitsThu 19:00 — 0 commitsThu 20:00 — 6 commitsThu 21:00 — 0 commitsThu 22:00 — 3 commitsThu 23:00 — 1 commitsFri 0:00 — 1 commitsFri 1:00 — 0 commitsFri 2:00 — 2 commitsFri 3:00 — 1 commitsFri 4:00 — 1 commitsFri 5:00 — 0 commitsFri 6:00 — 0 commitsFri 7:00 — 0 commitsFri 8:00 — 0 commitsFri 9:00 — 0 commitsFri 10:00 — 0 commitsFri 11:00 — 1 commitsFri 12:00 — 0 commitsFri 13:00 — 2 commitsFri 14:00 — 0 commitsFri 15:00 — 0 commitsFri 16:00 — 0 commitsFri 17:00 — 1 commitsFri 18:00 — 0 commitsFri 19:00 — 1 commitsFri 20:00 — 0 commitsFri 21:00 — 0 commitsFri 22:00 — 2 commitsFri 23:00 — 0 commitsSat 0:00 — 0 commitsSat 1:00 — 0 commitsSat 2:00 — 0 commitsSat 3:00 — 0 commitsSat 4:00 — 0 commitsSat 5:00 — 0 commitsSat 6:00 — 1 commitsSat 7:00 — 0 commitsSat 8:00 — 0 commitsSat 9:00 — 0 commitsSat 10:00 — 0 commitsSat 11:00 — 0 commitsSat 12:00 — 0 commitsSat 13:00 — 0 commitsSat 14:00 — 0 commitsSat 15:00 — 0 commitsSat 16:00 — 0 commitsSat 17:00 — 0 commitsSat 18:00 — 0 commitsSat 19:00 — 0 commitsSat 20:00 — 0 commitsSat 21:00 — 1 commitsSat 22:00 — 0 commitsSat 23:00 — 4 commits
Commit volume by weekday and hour (UTC). Larger dots mean more commits.

Who is committing

last 52 weeks
Maintainer commits114 (69%)
Community commits52 (31%)

166 commits in total over the last year.

DateListRankStars gained
Sep 10, 2026monthly#19+3,765
Sep 9, 2026monthly#19+3,765
Apr 9, 2026daily#23+155
Apr 8, 2026daily#16+175
Apr 7, 2026daily#11+252
Apr 3, 2026daily#22+228
Mar 31, 2026daily#9+321
  • freeCodeCamp/freeCodeCamp

    freeCodeCamp.org's open-source codebase and curriculum. Learn math, programming, and computer science for free.

    455.3K stars · TypeScript

  • openclaw/openclaw

    The AI that really does things. Any OS. Any Platform. The lobster way. 🦞

    389.4K stars · TypeScript

  • openclaw/openclaw

    Your own personal AI assistant. Any OS. Any Platform. The lobster way. 🦞

    384.4K stars · TypeScript

  • openclaw/openclaw

    Your own personal AI assistant. Any OS. Any Platform. The lobster way. 🦞

    384.4K stars · TypeScript

  • openclaw/openclaw

    Your own personal AI assistant. Any OS. Any Platform. The lobster way. 🦞

    384.4K stars · TypeScript

  • affaan-m/ECC

    The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

    255.9K stars · JavaScript