Codync
A free, open-source 1:1 alternative to Grok Bot and Muse. Message Claude Code, Codex, Cursor and 40+ coding agents as persistent bots from your iPhone, Mac or Linux desktop. Group chats, threads, appr
Embed a rendered card, give it a light and a dark version, and keep it current.
Translation pending
Developer toolsTypeScriptGitHub @stats-forgeOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Schedule GitHub-stats-forge card using GitHub Actions
Translation pending
Taken from the repository README
Loading the full README.
Read the full README ↗Generate GitHub stats cards as SVG files in a GitHub Actions run. No server, no shared instance, no proxy between your README and your data.
name: Stats cards
on:
workflow_dispatch:
schedule:
# ┌───────────── minute (0 - 59)
# │ ┌───────────── hour (0 - 23)
# │ │ ┌───────────── day of the month (1 - 31)
# │ │ │ ┌───────────── month (1 - 12 or JAN-DEC)
# │ │ │ │ ┌───────────── day of the week (0 - 6 or SUN-SAT)
# * * * * *
- cron: '0 3 * * *'
permissions: {}
jobs:
cards:
runs-on: ubuntu-latest
permissions:
contents: write # to push the refreshed cards
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- uses: stats-forge/github-stats-forge-action@b6d150903156e4392ee980a26aaa27da2b3a0154 # v0.12.0
with:
card: stats
path: profile/stats.svg
options: '?username=octocat&show_icons=true&theme=dark'
token: ${{ secrets.STATS_PAT }}
- uses: stats-forge/github-stats-forge-action@b6d150903156e4392ee980a26aaa27da2b3a0154 # v0.12.0
with:
card: top-langs
path: profile/langs.svg
options: '?username=octocat&layout=compact'
token: ${{ secrets.STATS_PAT }}
- name: Commit if anything changed
run: |
git config user.name 'github-actions[bot]'
git config user.email '41898282+github-actions[bot]@users.noreply.github.com'
git add profile
git diff --quiet --cached || git commit -m 'chore: refresh stats cards'
git push
Then in your README:

One card per step.
options takes the same query string as the hosted image URL, so migrating is copy-paste: everything from ? onward, plus an output path.
A hosted instance shares one PAT pool, so heavy traffic rate-limits everyone at once and your README shows a broken image. Your own run spends your own token, fails visibly in the job log, and leaves a committed SVG that keeps working if the instance goes away.
| Input | Required | Default | Description |
|---|---|---|---|
card | yes | — | stats, top-langs, pin, wakatime, gist, contributed-to, org or org-activity. |
path | yes | — | Output path, including the filename. |
options | no | "" | Query string (key=value&...) or JSON. Repeated keys join with commas. |
token | no | github.token | GitHub token. Private repo stats need a PAT with repo and read:user; gists need one with gist. |
The account option defaults to the repository owner: org for the org and org-activity cards, username for the rest. Not for gist, keyed on its id, or wakatime, keyed on a WakaTime profile rather than a GitHub login.
token defaults to the workflow's github.token, enough for public data. Private repositories and gists need an explicit PAT.
| Output | Description |
|---|---|
path | Path the SVG was written to, as given in path. |