Commit Graph

126 Commits

Author SHA1 Message Date
copilot-swe-agent[bot]
b0bc3dc0c9 Fix markdownlint errors from merge of affaan-m:main into main
Co-authored-by: pangerlkr <73515951+pangerlkr@users.noreply.github.com>
2026-03-12 08:21:41 +00:00
Affaan Mustafa
da4db99c94 fix: repair opencode config and project metadata 2026-03-11 01:52:10 -07:00
Affaan Mustafa
dba4c462c4 Merge pull request #301 from 0xrohitgarg/add-videodb-skills
Add VideoDB Skills to Individual Skills
2026-03-10 21:27:02 -07:00
Affaan Mustafa
192d2b63f2 docs: align videodb event directory handling 2026-03-10 21:23:25 -07:00
Affaan Mustafa
70449a1cd7 docs: tighten videodb listener guidance 2026-03-10 21:22:35 -07:00
Affaan Mustafa
82f9f58d28 Merge pull request #290 from nocodemf/add-evos-operational-skills
feat(skills): Add 8 operational domain skills (logistics, manufacturing, retail, energy)
2026-03-10 21:19:01 -07:00
Affaan Mustafa
db2bf16427 docs: resolve videodb review findings 2026-03-10 21:18:33 -07:00
Affaan Mustafa
47a5d4b459 docs: resolve remaining operational skill comments 2026-03-10 21:13:55 -07:00
Affaan Mustafa
2581bebfd9 docs: resolve videodb follow-up review comments 2026-03-10 21:11:00 -07:00
Affaan Mustafa
6c8f425ae2 docs: resolve operational skill review issues 2026-03-10 21:07:36 -07:00
Affaan Mustafa
b0c2e77bd8 docs: clarify videodb reference guides 2026-03-10 21:04:02 -07:00
Affaan Mustafa
b8ab34e362 docs: harden videodb skill examples 2026-03-10 21:03:32 -07:00
Affaan Mustafa
22816651c2 fix: normalize operational skill packaging 2026-03-10 20:59:05 -07:00
Affaan Mustafa
0326442969 Merge pull request #387 from affaan-m/codex/fix-386-observer-max-turns
fix: raise observer analysis turn budget
2026-03-10 20:57:38 -07:00
Affaan Mustafa
7433610105 docs: tighten kotlin support examples 2026-03-10 20:53:39 -07:00
ali
f6a470de63 fix: resolve semantic mismatch between UseCase naming and ViewModel usage 2026-03-10 20:53:39 -07:00
ali
ab693f7b8a fix: address remaining PR review comments for Kotlin/Android/KMP docs 2026-03-10 20:53:39 -07:00
ali
8961f24821 fix: address PR review comments for Kotlin/Android/KMP docs 2026-03-10 20:53:39 -07:00
ali
f10d638bfa feat: add Kotlin, Android, and KMP rules, agent, skills, and command 2026-03-10 20:53:39 -07:00
Affaan Mustafa
16bc7436c5 fix: raise observer analysis turn budget 2026-03-10 20:52:53 -07:00
Affaan Mustafa
78a56174b1 docs: tighten perl support guidance 2026-03-10 20:42:54 -07:00
Necip Sunmaz
36bcf20588 fix: address code review findings from cubic-dev-ai
- Fix path traversal regex prefix confusion in perl-security skill
  - Revert v1.4.0 changelog entry (Perl not part of that release)
  - Rename $a/$b to $x/$y to avoid shadowing sort globals
  - Replace return undef with bare return per perlcritic rules
2026-03-10 20:42:54 -07:00
Necip Sunmaz
b2a7bae5db feat: add Perl skills (patterns, security, testing) 2026-03-10 20:42:54 -07:00
Affaan Mustafa
0c2954565d docs: add skill-stocktake agent invocation example 2026-03-10 20:15:38 -07:00
Tatsuya Shimomoto
02d754ba67 fix: use general-purpose agent instead of Explore for skill-stocktake evaluation
The Explore agent is a "Fast agent" optimized for codebase exploration,
not deep reasoning. The skill-stocktake V4 design requires holistic AI
judgment (actionability, scope fit, uniqueness, currency) which needs
the full reasoning capability of the conversation's main model.

Additionally, the Agent tool has no `model` parameter — specifying
`model: opus` was silently ignored, causing the evaluation to run on
the lightweight Explore model. This resulted in all skills receiving
"Keep" verdicts without genuine critical analysis.

Changing to `general-purpose` agent ensures evaluation runs on the
conversation's main model (e.g., Opus 4.6), enabling the holistic
judgment that V4 was designed for.
2026-03-10 20:15:38 -07:00
Affaan Mustafa
7c82aebc76 docs: tighten blueprint install guidance 2026-03-10 19:23:00 -07:00
Affaan Mustafa
205fa72809 docs: align blueprint skill with ECC install flow 2026-03-10 19:23:00 -07:00
ant
13fe21c5b7 fix: add git fetch and use pinned checkout for update flow
Address review feedback:
- Add missing `git fetch origin` before comparing commits
- Replace `git pull` with `git checkout <sha>` for deterministic updates
2026-03-10 19:23:00 -07:00
ant
f809bdd049 fix(skills): address review feedback on blueprint skill
- Pin installation to specific commit hash (full SHA) to mitigate
  supply-chain risk (cubic-dev-ai feedback)
- Add "When to Use", "How It Works", "Examples" sections to match
  repo skill format conventions (coderabbitai feedback)
- Add review-before-update instructions for safe version upgrades
- Emphasize zero-runtime-risk: pure Markdown, no executable code
2026-03-10 19:23:00 -07:00
ant
678ee7dc32 feat(skills): add blueprint skill for multi-session construction planning 2026-03-10 19:23:00 -07:00
Affaan Mustafa
4de776341e fix: handle null tool_response fallback 2026-03-10 19:14:56 -07:00
ispaydeu
708c265b4f fix: read tool_response field in observe.sh (#377)
Claude Code sends tool output as `tool_response` in PostToolUse hook
payloads, but observe.sh only checked for `tool_output` and `output`.
This caused all observations to have empty output fields, making the
observer pipeline blind to tool results.

Adds `tool_response` as the primary field to check, with backward-
compatible fallback to the existing `tool_output` and `output` fields.
2026-03-10 19:14:56 -07:00
Affaan Mustafa
af51fcacb7 fix: resolve PR 371 portability regressions 2026-03-09 22:49:43 -07:00
Affaan Mustafa
440178d697 fix: harden hook portability and plugin docs 2026-03-09 22:49:43 -07:00
Frank
e9577e34f1 fix: force UTF-8 for instinct CLI file IO (#353) 2026-03-07 14:47:35 -08:00
jtzingsheim1
9661a6f042 fix(hooks): scrub secrets and harden hook security (#348)
* fix(hooks): scrub secrets and harden hook security

- Scrub common secret patterns (api_key, token, password, etc.) from
  observation logs before persisting to JSONL (observe.sh)
- Auto-purge observation files older than 30 days (observe.sh)
- Strip embedded credentials from git remote URLs before saving to
  projects.json (detect-project.sh)
- Add command prefix allowlist to runCommand — only git, node, npx,
  which, where are permitted (utils.js)
- Sanitize CLAUDE_SESSION_ID in temp file paths to prevent path
  traversal (suggest-compact.js)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(hooks): address review feedback from CodeRabbit and Cubic

- Reject shell command-chaining operators (;|&`) in runCommand, strip
  quoted sections before checking to avoid false positives (utils.js)
- Remove command string from blocked error message to avoid leaking
  secrets (utils.js)
- Fix Python regex quoting: switch outer shell string from double to
  single quotes so regex compiles correctly (observe.sh)
- Add optional auth scheme match (Bearer, Basic) to secret scrubber
  regex (observe.sh)
- Scope auto-purge to current project dir and match only archived
  files (observations-*.jsonl), not live queue (observe.sh)
- Add second fallback after session ID sanitization to prevent empty
  string (suggest-compact.js)
- Preserve backward compatibility when credential stripping changes
  project hash — detect and migrate legacy directories
  (detect-project.sh)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(hooks): block $() substitution, fix Bearer redaction, add security tests

- Add $ and \n to blocked shell metacharacters in runCommand to prevent
  command substitution via $(cmd) and newline injection (utils.js)
- Make auth scheme group capturing so Bearer/Basic is preserved in
  redacted output instead of being silently dropped (observe.sh)
- Add 10 unit tests covering runCommand allowlist blocking (rm, curl,
  bash prefixes) and metacharacter rejection (;|&`$ chaining), plus
  error message leak prevention (utils.test.js)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(hooks): scrub parse-error fallback, strengthen security tests

Address remaining reviewer feedback from CodeRabbit and Cubic:

- Scrub secrets in observe.sh parse-error fallback path (was writing
  raw unsanitized input to observations file)
- Remove redundant re.IGNORECASE flag ((?i) inline flag already set)
- Add inline comment documenting quote-stripping limitation trade-off
- Fix misleading test name for error-output test
- Add 5 new security tests: single-quote passthrough, mixed
  quoted+unquoted metacharacters, prefix boundary (no trailing space),
  npx acceptance, and newline injection
- Improve existing quoted-metacharacter test to actually exercise
  quote-stripping logic

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(security): block $() and backtick inside quotes in runCommand

Shell evaluates $() and backticks inside double quotes, so checking
only the unquoted portion was insufficient. Now $ and ` are rejected
anywhere in the command string, while ; | & remain quote-aware.

Addresses CodeRabbit and Cubic review feedback on PR #348.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-07 14:47:31 -08:00
Affaan Mustafa
48b883d741 feat: deliver v1.8.0 harness reliability and parity updates 2026-03-04 14:48:06 -08:00
Affaan Mustafa
32e9c293f0 chore: replace external repo links with @username attribution 2026-03-03 12:32:35 -08:00
Affaan Mustafa
cd129edef0 feat(skills): add autonomous-loops and plankton-code-quality skills
- autonomous-loops: 6 loop patterns from simple claude -p pipelines to
  RFC-driven DAG orchestration (Ralphinho, infinite-agentic-loop,
  continuous-claude, de-sloppify pattern)
- plankton-code-quality: write-time enforcement integration guide
- README: updated directory listing and Plankton description

Sources: enitrat/ralphinho, disler/infinite-agentic-loop,
AnandChowdhary/continuous-claude, alexfazio/plankton
2026-03-03 12:16:57 -08:00
Rohit Garg
179a0272d1 videodb skills update: add reference files for videodb skills 2026-03-03 18:20:30 +05:30
Rohit Garg
cff0308568 videodb skills update: add reference files for videodb skills 2026-03-03 18:16:39 +05:30
zzzhizhi
adc0f67008 fix(continuous-learning-v2): observer background process crashes immediately (#312)
* fix(continuous-learning-v2): observer background process crashes immediately

Three bugs prevent the observer from running:

1. Nested session detection: When launched from a Claude Code session,
   the child process inherits CLAUDECODE env var, causing `claude` CLI
   to refuse with "cannot be launched inside another session". Fix: unset
   CLAUDECODE in the background process.

2. set -e kills the loop: The parent script's `set -e` is inherited by
   the subshell. When `claude` exits non-zero (e.g. max turns reached),
   the entire observer loop dies. Fix: `set +e` in the background process.

3. Subshell dies when parent exits: `( ... ) & disown` loses IO handles
   when the parent shell exits, killing the background process. Fix: use
   `nohup /bin/bash -c '...'` for full detachment, and `sleep & wait`
   to allow SIGUSR1 to interrupt sleep without killing the process.

Additionally, the prompt for Haiku now includes the exact instinct file
format inline (YAML frontmatter with id/trigger/confidence/domain/source
fields), since the previous prompt referenced "the observer agent spec"
which Haiku could not actually read, resulting in instinct files that
the CLI parser could not parse.

* fix: address review feedback on observer process management

- Use `env` to pass variables to child process instead of quote-splicing,
  avoiding shell injection risk from special chars in paths
- Add USR1_FIRED flag to prevent double analysis when SIGUSR1 interrupts
  the sleep/wait cycle
- Track SLEEP_PID and kill it in both TERM trap and USR1 handler to
  prevent orphaned sleep processes from accumulating
- Consolidate cleanup logic into a dedicated cleanup() function

* fix: guard PID file cleanup against race condition on restart

Only remove PID file in cleanup trap if it still belongs to the
current process, preventing a restarted observer from losing its
PID file when the old process exits.
2026-03-02 22:23:01 -08:00
Affaan Mustafa
1df0a53f22 fix: resolve CI failures on main — lint, hooks validator, and test alignment
- Fix MD012 trailing blank lines in commands/projects.md and commands/promote.md
- Fix MD050 strong-style in continuous-learning-v2 (escape __tests__ as inline code)
- Extract doc-file-warning hook to standalone script to fix hooks validator regex parsing
- Update session-end test to match #317 behavior (always update summary content)
- Allow shell script hooks in integration test format validation

All 992 tests passing.
2026-03-02 22:15:46 -08:00
Harry Kwok
5818e8adc7 feat: project-scoped instinct isolation
* feat: add project-scoped instinct isolation

* fix(continuous-learning-v2): harden instinct loading and promotion safety; sync v2.1 command docs

* fix(ci): make copilot-setup-steps a valid GitHub Actions workflow

* fix(hooks): stabilize docs warning inline JS regex parsing
2026-03-01 12:07:13 -08:00
Codex
dc8455dd10 feat: separate core vs niche skills and enforce research-first default
* Initial plan

* docs: document core skill scope

---------

Co-authored-by: openai-code-agent[bot] <242516109+Codex@users.noreply.github.com>
2026-02-28 10:06:43 -08:00
Rohit Garg
c26ba60003 Add VideoDB Skills to Individual Skills 2026-02-27 22:13:59 +05:30
Affaan Mustafa
706ee80069 feat: add generic content and investor skills 2026-02-27 05:50:23 -08:00
Affaan Mustafa
87fc2d5089 Add frontend slides skill across platforms 2026-02-27 05:39:31 -08:00
Affaan Mustafa
a9b104fc23 feat: add security guides and sanitize external links across repo
New articles:
- the-security-guide.md: "The Shorthand Guide to Securing Your Agent" (595 lines)
  Attack vectors, sandboxing, sanitization, OWASP Top 10, observability
- the-openclaw-guide.md: "The Hidden Danger of OpenClaw" (470 lines)
  Security analysis of OpenClaw, MiniClaw thesis, industry evidence

External link sanitization (22 files across EN, zh-CN, zh-TW, ja-JP, .cursor):
- Removed third-party GitHub links from skills and guides
- Replaced with inline descriptions to prevent transitive prompt injection
- Kept official org links (Anthropic, Google, Supabase, Mixedbread)
2026-02-25 07:20:42 -08:00
nocodemf
fb94c645f7 fix: address CodeRabbit review feedback
- Rename SKILL.md to <skill-name>.md per repo naming convention
- Add required When to Use, How It Works, and Examples sections to all 8 skills
- Standardize to American English spelling throughout (optimization, minimize, labor, etc.)
- Fix "different than" to "different from" in returns-reverse-logistics

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-25 18:07:07 +03:00