Commit f807be6
feat: ponytail agent mode + agent-supervised dependency updates
PONYTAIL (DietrichGebert/ponytail): a system-prompt overlay that forces the
laziest solution that works (~54% less code, YAGNI). Same shape as caveman, so
both are now generalised into one composable AGENT_MODES registry read from each
project's own SKILL.md — caveman trims what the agent SAYS, ponytail trims what
it BUILDS, and they stack. Replaces the caveman-specific endpoint with
GET/POST /api/modes, generic /<mode> [level|off] chat commands, per-mode cycle
buttons in the composer, and mount_agent_modes() pushing all 13 mode skills into
opencode/hermes/openclaw.
SUPERVISED UPDATES (aios_updates.py): AIOS now watches each bundled project's
upstream and, when one moves ahead, an AGENT reviews the actual commits and
changed files before anything is touched, returning SAFE / RISKY / BLOCK with
reasoning grounded in how AIOS consumes that project (INTEGRATION_NOTES).
Risk tiers gate autonomy: content-tier (fabric patterns, caveman/ponytail skills
- nothing executes) may auto-apply on SAFE; service-tier (openclaw, hermes,
opencode, CrewAI - real dependency trees) always waits for you. Applying backs up
first, reinstalls deps via the detected package manager, health-checks, and rolls
back automatically on failure. claude-code-api has no discoverable upstream so it
is explicitly pinned rather than guessed at.
Fail-safe by construction: a malformed or unreachable agent verdict parses to
RISKY, never SAFE — verified by killing the LLM and watching it refuse to apply.
New: aios updates [--check|--apply P|--rollback P], GET/POST /api/updates, an
Updates dashboard view with verdicts + commit/file evidence and Apply/Skip/Roll
back, config updates.supervised/check_interval/auto_apply_safe.
Verified against live GitHub: all 7 upstreams resolve, baselines recorded,
behind-detection returns real commits+files (fabric 21 ahead, 13 files), verdict
parser passes 5/5 including fail-safe, opencode->brain fallback works, and a real
review through claude-code returned BLOCK on a planted breaking change, naming
the config-key rename, the Node 22 requirement and the matrix-crypto major bump.
Also cut GitHub API calls per repo (cached default branch) after hitting the
anonymous 60/hr limit during testing; it now degrades to 'unreachable' with a
GITHUB_TOKEN hint instead of a false verdict.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>1 parent c45200e commit f807be6
162 files changed
Lines changed: 14256 additions & 1028 deletions
File tree
- docs
- ponytail-main
- .agents
- plugins
- rules
- .claude-plugin
- .clinerules
- .codex-plugin
- .cursor/rules
- .devin-plugin
- .github
- plugin
- workflows
- .kiro/steering
- .openclaw/skills
- ponytail-audit
- ponytail-debt
- ponytail-gain
- ponytail-help
- ponytail-review
- ponytail
- .opencode
- command
- plugins
- .qoder-plugin
- .qoder/rules
- .windsurf/rules
- assets
- benchmarks
- agentic
- arms
- results
- commands
- docs
- examples
- hooks
- pi-extension
- test
- ponytail-mcp
- test
- scripts
- skills
- ponytail-audit
- ponytail-debt
- ponytail-gain
- ponytail-help
- ponytail-review
- ponytail
- tests
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
71 | 71 | | |
72 | 72 | | |
73 | 73 | | |
74 | | - | |
| 74 | + | |
75 | 75 | | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
76 | 85 | | |
77 | 86 | | |
78 | 87 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
267 | 267 | | |
268 | 268 | | |
269 | 269 | | |
| 270 | + | |
270 | 271 | | |
271 | 272 | | |
272 | 273 | | |
| |||
474 | 475 | | |
475 | 476 | | |
476 | 477 | | |
| 478 | + | |
| 479 | + | |
| 480 | + | |
| 481 | + | |
477 | 482 | | |
478 | 483 | | |
479 | 484 | | |
| |||
803 | 808 | | |
804 | 809 | | |
805 | 810 | | |
806 | | - | |
| 811 | + | |
807 | 812 | | |
808 | 813 | | |
809 | 814 | | |
| |||
1168 | 1173 | | |
1169 | 1174 | | |
1170 | 1175 | | |
1171 | | - | |
1172 | | - | |
1173 | | - | |
1174 | | - | |
1175 | | - | |
1176 | | - | |
| 1176 | + | |
| 1177 | + | |
| 1178 | + | |
| 1179 | + | |
| 1180 | + | |
| 1181 | + | |
| 1182 | + | |
| 1183 | + | |
| 1184 | + | |
| 1185 | + | |
| 1186 | + | |
1177 | 1187 | | |
1178 | | - | |
1179 | | - | |
| 1188 | + | |
1180 | 1189 | | |
1181 | 1190 | | |
1182 | | - | |
1183 | | - | |
1184 | | - | |
1185 | | - | |
1186 | | - | |
1187 | | - | |
1188 | | - | |
1189 | | - | |
1190 | | - | |
1191 | | - | |
1192 | | - | |
| 1191 | + | |
| 1192 | + | |
| 1193 | + | |
| 1194 | + | |
| 1195 | + | |
| 1196 | + | |
| 1197 | + | |
| 1198 | + | |
| 1199 | + | |
| 1200 | + | |
| 1201 | + | |
| 1202 | + | |
| 1203 | + | |
1193 | 1204 | | |
1194 | 1205 | | |
1195 | 1206 | | |
| |||
1810 | 1821 | | |
1811 | 1822 | | |
1812 | 1823 | | |
| 1824 | + | |
| 1825 | + | |
| 1826 | + | |
| 1827 | + | |
| 1828 | + | |
| 1829 | + | |
| 1830 | + | |
| 1831 | + | |
| 1832 | + | |
| 1833 | + | |
| 1834 | + | |
| 1835 | + | |
| 1836 | + | |
| 1837 | + | |
| 1838 | + | |
| 1839 | + | |
| 1840 | + | |
| 1841 | + | |
| 1842 | + | |
| 1843 | + | |
| 1844 | + | |
| 1845 | + | |
| 1846 | + | |
| 1847 | + | |
| 1848 | + | |
| 1849 | + | |
| 1850 | + | |
| 1851 | + | |
| 1852 | + | |
| 1853 | + | |
| 1854 | + | |
| 1855 | + | |
| 1856 | + | |
| 1857 | + | |
| 1858 | + | |
| 1859 | + | |
| 1860 | + | |
| 1861 | + | |
| 1862 | + | |
| 1863 | + | |
| 1864 | + | |
| 1865 | + | |
| 1866 | + | |
| 1867 | + | |
| 1868 | + | |
| 1869 | + | |
| 1870 | + | |
| 1871 | + | |
| 1872 | + | |
| 1873 | + | |
| 1874 | + | |
| 1875 | + | |
| 1876 | + | |
| 1877 | + | |
| 1878 | + | |
| 1879 | + | |
| 1880 | + | |
| 1881 | + | |
| 1882 | + | |
| 1883 | + | |
| 1884 | + | |
| 1885 | + | |
| 1886 | + | |
| 1887 | + | |
| 1888 | + | |
| 1889 | + | |
| 1890 | + | |
| 1891 | + | |
| 1892 | + | |
| 1893 | + | |
1813 | 1894 | | |
1814 | 1895 | | |
1815 | 1896 | | |
| |||
2038 | 2119 | | |
2039 | 2120 | | |
2040 | 2121 | | |
| 2122 | + | |
| 2123 | + | |
| 2124 | + | |
| 2125 | + | |
| 2126 | + | |
| 2127 | + | |
2041 | 2128 | | |
2042 | 2129 | | |
2043 | 2130 | | |
| |||
0 commit comments