Cost Tracking
affaan-m/ECC
Track and report Claude Code token usage, spending, and budgets from the local ECC cost-tracker metrics log.
Tracks and analyzes behavioral patterns (habits) for known users based on their wellbeing, presence, posture, and activity history.
The automated check flagged lines worth reading first. See the safety section below.
$ npx skills add autonomous-ai/Physical-AI-Operating-System --skill habit -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install autonomous-ai/Physical-AI-Operating-System habit --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/autonomous-ai/Physical-AI-Operating-System.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/habit .claude/skills/habit && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "habit" agent skill from https://github.com/autonomous-ai/Physical-AI-Operating-System/tree/main/skills/habit into .claude/skills/habit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "habit", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/autonomous-ai/Physical-AI-Operating-System/tree/main/skills/habitType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add autonomous-ai/Physical-AI-Operating-System --skill habit -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install autonomous-ai/Physical-AI-Operating-System habit --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/autonomous-ai/Physical-AI-Operating-System.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/habit .agents/skills/habit && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "habit" agent skill from https://github.com/autonomous-ai/Physical-AI-Operating-System/tree/main/skills/habit into .agents/skills/habit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "habit", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add autonomous-ai/Physical-AI-Operating-System --skill habit -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install autonomous-ai/Physical-AI-Operating-System habit --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/autonomous-ai/Physical-AI-Operating-System.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/habit .cursor/skills/habit && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "habit" agent skill from https://github.com/autonomous-ai/Physical-AI-Operating-System/tree/main/skills/habit into .cursor/skills/habit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "habit", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/autonomous-ai/Physical-AI-Operating-System.git --path skills/habit--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add autonomous-ai/Physical-AI-Operating-System --skill habit -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install autonomous-ai/Physical-AI-Operating-System habit --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/autonomous-ai/Physical-AI-Operating-System.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/habit .gemini/skills/habit && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "habit" agent skill from https://github.com/autonomous-ai/Physical-AI-Operating-System/tree/main/skills/habit into .gemini/skills/habit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "habit", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install autonomous-ai/Physical-AI-Operating-System habitInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add autonomous-ai/Physical-AI-Operating-System --skill habit -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/autonomous-ai/Physical-AI-Operating-System.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/habit .github/skills/habit && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "habit" agent skill from https://github.com/autonomous-ai/Physical-AI-Operating-System/tree/main/skills/habit into .github/skills/habit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "habit", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add autonomous-ai/Physical-AI-Operating-System --skill habit -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install autonomous-ai/Physical-AI-Operating-System habit --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/autonomous-ai/Physical-AI-Operating-System.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/habit .opencode/skills/habit && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "habit" agent skill from https://github.com/autonomous-ai/Physical-AI-Operating-System/tree/main/skills/habit into .opencode/skills/habit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "habit", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
habitTracks and analyzes behavioral patterns (habits) for known users based on their wellbeing, presence, posture, and activity history.
Habit is an agent skill from autonomous-ai/Physical-AI-Operating-System. Tracks and analyzes behavioral patterns (habits) for known users based on their wellbeing, presence, posture, and activity history. Use when answering questions about a user's routines ("What are Leo's habits?", "Has Leo been keeping to his routine?", "Notice anything about my patterns?"), or when invoked from wellbeing/SKILL.md or posture/SKILL.md on a threshold nudge to refresh patterns and provide habit-aware phrasing. Also feeds music-suggestion/SKILL.md with musicpatterns for personalized genre. Habit does…
Its SKILL.md is about 2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 6 other files (for example `reference/build-patterns.md`, `reference/match-helper.md` and `reference/music.md`).
The repository describes itself as: The open-source operating system for physical AI. The licence is Apache-2.0.
Read from SKILL.md and the folder at commit d5efe9d. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
curlFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use curl, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Habit loads about 2k tokens when it runs. Until then it costs about 154 tokens; SKILL.md has 915 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found patterns that need a careful read before installing.
- Log silently — do NOT tell the user you're logging. Just respond naturally.Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from autonomous-ai/Physical-AI-Operating-System at commit d5efe9d, republished under its Apache-2.0 licence (© autonomous-ai). 915 words, ~1,951 tokens.
.claude/skills/habit/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.Habits are repeating behavioral patterns derived from historical logs. This skill reads existing data (wellbeing, presence, mood, music, posture) to build patterns per user, then stores them for other skills to consume.
OUTPUT RULE: Reply is spoken VERBATIM. ONE short caring sentence. All computation, pattern math, and log lookups stay in
thinking. NEVER output timestamps, deltas, frequency counts, or reasoning in the reply. (Exception: Flow E — open habit questions — see below.)
For a supporting habit lookup or refresh, return to the invoking skill without an additional spoken report. Keep pattern analysis in the provider's native thinking channel (or omit it if unavailable); do not narrate file reads or summarize the analysis in ordinary text. Preserve required refreshes and writes. Use the invoking skill's short reply; Flow E still allows enough detail to answer an explicit habit question.
All data lives in /root/local/users/{name}/:
| Folder | File pattern | What it contains |
|---|---|---|
wellbeing/ | YYYY-MM-DD.jsonl | drink, break, celebrate, sedentary labels, enter/leave, nudge_* events with timestamps |
mood/ | YYYY-MM-DD.jsonl | signal + decision rows with moods |
music-suggestions/ | YYYY-MM-DD.jsonl | suggestion history + accepted/rejected status |
posture/ | YYYY-MM-DD.jsonl | posture_alert (ergo-risk events from camera) + nudge_posture / praise_posture rows |
User names are lowercase folder names under /root/local/users/. Known users: leo, chloe, gray, lily. Strangers collapse to unknown — this is treated as a regular user with its own folder and its own habit patterns (aggregated across all strangers).
JSONL line example (wellbeing):
{"ts": 1776657145.05, "seq": 4, "hour": 10, "action": "drink", "notes": ""}Computed patterns are stored per user at /root/local/users/{name}/habit/patterns.json.
Rebuild when:
A habit is a time-anchored action that repeats across multiple days. Strength labels:
| Frequency | Strength |
|---|---|
| < 0.50 | weak (skip for nudging) |
| 0.50 – 0.75 | moderate |
| > 0.75 | strong |
Habits require at least 3 days of data to form. With fewer days, skip proactive nudging.
| Flow | When to run | Details |
|---|---|---|
| A — Build patterns | Discovery / answering questions; wellbeing nudge | reference/build-patterns.md |
| B — Habit match | Helper for wellbeing/SKILL.md Step 3b | reference/match-helper.md |
| C — Music personalization | Build / consume music_patterns | reference/music.md |
| D — Conversation intent logging | Triggered from SOUL when user states intent NOW | inline below |
| E — Open habit question | User asks about someone's habits / patterns / routines | reference/open-question.md |
SOUL instructs the device to call this flow when user expresses intent for a daily activity NOW.
Intent → action mapping:
| User says | Action to log |
|---|---|
| "lunch", "dinner", "going to eat", "grab food" | meal |
| "coffee break", "grab a coffee", "getting coffee" | coffee |
| "good night", "going to sleep", "heading to bed" | sleep |
| "gym", "exercise", "workout", "going for a run" | exercise |
How to log:
[HW:/wellbeing/log:{"action":"meal","notes":"user said: going to lunch","user":"<current_user>"}]Emit the marker at the start of the normal reply; the runtime forwards it to the same wellbeing log API. Do not also send a curl POST for that intent. If the runtime explicitly rejects the marker, use the wellbeing skill's documented log fallback with the same payload.
Rules:
notes field stores the original phrase for debugging.curl -s "http://127.0.0.1:5000/api/openclaw/wellbeing-history?user={name}&date=YYYY-MM-DD&last=100"cat /root/local/users/{name}/wellbeing/YYYY-MM-DD.jsonlUse direct file reads for multi-day pattern building (faster, no API pagination needed).
curl -s "http://127.0.0.1:5000/api/openclaw/wellbeing-history?user={name}&last=50"From wellbeing/SKILL.md: When wellbeing's Step 3 fires a threshold nudge, it invokes Flow A (which self-throttles via the freshness guard). Flow A returns the current wellbeing_patterns; wellbeing uses any matching pattern for the nudge action to enrich Step 4's phrasing (e.g. "you usually drink around now"). No separate habit-only nudge — habit context piggybacks on the threshold nudge. This keeps bootstrap cost on the rare nudge path, not on every motion.activity tick.
From posture/SKILL.md: Same pattern. When posture decides to nudge AND its context block has bootstrap_needed=true, it invokes Flow A. Flow A returns posture_patterns (peak hour, side bias, typical risk) which the posture coach uses to phrase pattern-aware nudges (e.g. "around this hour you usually slip").
From music-suggestion/SKILL.md: Read habit/patterns.json → music_patterns. If habit data exists and current hour matches, use preferred genre instead of default genre table.
| Purpose | Min days | Min occurrences |
|---|---|---|
| Habit detection | 3 | 2 |
| Proactive nudging | 5 | 3 |
| Music personalization | 3 | 2 accepted |
If data is insufficient: use default wellbeing thresholds / music genre table as fallback. Never fabricate patterns.
Nudge enrichment (Flow A → wellbeing Step 3b):
Open habit question (Flow E):
© autonomous-ai, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 5 other files in skills/habit of autonomous-ai/Physical-AI-Operating-System.
Open the folder on GitHubat commit d5efe9d
Habit next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Habit this skillautonomous-ai/Physical-AI-Operating-System | 407 | — | ~2k | Automated safety check: Warn | Apache-2.0 | |
| Cost Trackingaffaan-m/ECC | 276k | 1 repos | ~1.3k | Automated safety check: Pass | MIT | |
| User Behavior AnalyzerLeoYeAI/openclaw-master-skills | 2.2k | — | ~2.3k | Automated safety check: Pass | MIT | |
| Meeting Analyzeralirezarezvani/claude-skills | 28k | — | ~3k | Automated safety check: Pass | MIT | |
| TrackingBuilderIO/agent-native | 7.1k | — | ~8k | Automated safety check: Pass | None | |
| Time Trackingsickn33/agentic-awesome-skills | 47k | 1 repos | ~3.8k | Automated safety check: Pass | MIT |
affaan-m/ECC
Track and report Claude Code token usage, spending, and budgets from the local ECC cost-tracker metrics log.
LeoYeAI/openclaw-master-skills
为AIME(AI交易助手)生成综合用户行为分析报告。当用户要求分析用户行为、生成用户报告、分析交互模式、调查用户流失、了解用户参与度或从用户ID或日志数据创建分析文档时,使用此技能。
alirezarezvani/claude-skills
Analyzes meeting transcripts and recordings to surface behavioral patterns, communication anti-patterns, and actionable coaching feedback.
BuilderIO/agent-native
Server-side analytics tracking with pluggable providers. An agent skill from BuilderIO/agent-native.
sickn33/agentic-awesome-skills
Time entry register: employee, project, client, task, hours, billable flag, rate and amount, invoice and approver.
ruvnet/ruflo
Agent skill for code-analyzer - invoke with $agent-code-analyzer
autonomous-ai/Physical-AI-Operating-System
Legacy Autonomous Buddy control for explicitly requested Buddy coding sessions.
autonomous-ai/Physical-AI-Operating-System
Push Claude Code activity to the user's device (e.g. An agent skill from autonomous-ai/Physical-AI-Operating-System.
autonomous-ai/Physical-AI-Operating-System
Operate apps/websites on the paired Mac via Buddy: Calendar, Notes, forms, screenshots, files.
autonomous-ai/Physical-AI-Operating-System
Discover and use linked third-party services (Gmail, Google Calendar, Google Drive, Notion, Figma, Asana, Linear, GitHub, Ahrefs, Facebook Fan Page and others).
autonomous-ai/Physical-AI-Operating-System
Delegate digital work to agents on the computer paired through Harness; discover Store packages and prepare an agent when needed.
autonomous-ai/Physical-AI-Operating-System
Low-level speaker and microphone hardware control — adjust volume, play test tones, record raw audio.
Tracks and analyzes behavioral patterns (habits) for known users based on their wellbeing, presence, posture, and activity history. Habit is an agent skill from autonomous-ai/Physical-AI-Operating-System. Tracks and analyzes behavioral patterns (habits) for known users based on their wellbeing, presence, posture, and activity history.
Habit fits situations like: answering questions about a users routines (What are Leos habits?; has Leo been keeping to his routine?; notice anything about my patterns?); invoked from wellbeing/SKILL.md.
Run `npx skills add autonomous-ai/Physical-AI-Operating-System --skill habit -a claude-code`. Or copy the skill folder (skills/habit in autonomous-ai/Physical-AI-Operating-System) into .claude/skills/habit in your project. Claude Code loads it when a task matches its description.
Run `npx skills add autonomous-ai/Physical-AI-Operating-System --skill habit -a codex`. Or copy the skill folder (skills/habit in autonomous-ai/Physical-AI-Operating-System) into .agents/skills/habit in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add autonomous-ai/Physical-AI-Operating-System --skill habit -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/habit, .gemini/skills/habit, .github/skills/habit and .opencode/skills/habit in your project.
Going by SKILL.md and its folder, Habit needs the command-line tools its instructions call (curl).
SKILL.md contains no URLs. Its commands use curl, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md flagged 1 warning(s): contains instruction-override wording (e.g. “without asking the user”). Read the flagged lines before installing; the check is not a guarantee either way.
Habit is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2k tokens (SKILL.md is roughly 7.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Habit: Cost Tracking (affaan-m/ECC, 276k stars), User Behavior Analyzer (LeoYeAI/openclaw-master-skills, 2.2k stars), Meeting Analyzer (alirezarezvani/claude-skills, 28k stars) and Tracking (BuilderIO/agent-native, 7.1k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
autonomous-ai (a GitHub organization) maintains it in autonomous-ai/Physical-AI-Operating-System, which has 407 GitHub stars. The repository holds 28 skills in this directory. The repository was last updated on October 10, 2026.
Source: autonomous-ai/Physical-AI-Operating-System on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.