grow — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited grow (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
DEVLOOP_DIR="$HOME/.devloop"
PROFILE="$DEVLOOP_DIR/profile.md"
mkdir -p "$DEVLOOP_DIR/observations"
[ -f "$PROFILE" ] && echo "PROFILE_EXISTS=true" || echo "PROFILE_EXISTS=false"
echo "DEVLOOP_DIR=$DEVLOOP_DIR"
if [ -f "$HOME/.devloop/scripts/check-grow-ready.sh" ]; then
bash "$HOME/.devloop/scripts/check-grow-ready.sh" --context 2>/dev/null
else
echo "GROW_AVAILABLE=true"
fiIf PROFILE_EXISTS=false, read onboarding.md and follow its instructions.
If PROFILE_EXISTS=true:
$ARGUMENTS:GROW_AVAILABLE=false: respond with the value of COOLDOWN_MSG as plain text and stop. Do not read any other files.$ARGUMENTS = "me" → read me.md and follow its instructions$ARGUMENTS = "history" → read history.md and follow its instructionsONLY use content from sources listed in sources.md. Run this entire section silently.
Read profile.md, observations, and history.jsonl. Identify 3-5 growth opportunities, ranked with reasoning. Don't search yet. For each:
Two parallel Sonnet subagents. They explore wide and return a menu of candidates, not a committed topic:
Opportunity explorer. Given all ranked opportunities from Step 1, find 2-3 high-quality, up-to-date pieces from sources.md for each opportunity. Prefer canonical/definitive content. Return candidates with: source, author, URL, one-line summary, which opportunity it serves.
Recency explorer. Search last 7-14 days across sources.md for the most important recent content in the AI builder space. Not constrained to the opportunity list. Give it the user's profile for relevance, but let it find what's new and significant independently. Return candidates with: source, author, URL, one-line summary, why it matters.
Evaluate candidates from both explorers against the growth opportunities without bias. Be open to recency findings that challenge assumptions, introduce new ways of thinking, or significantly change productivity. Pick ONE topic by weighing impact and content quality.
If the selected topic already has 2-3 strong voices, skip. If it needs depth, dispatch a Sonnet subagent to find 1-2 complementary perspectives on the locked topic.
Read visual-identity.md and format the output using the Recommendation template. One cohesive output, 400-700 words, on the single topic from Find Content.
Voice:
Write like a friend telling you about something they read that changed how they think. Curious, not lecturing. Stories, not summaries. Reference their actual projects, decisions, and words.
Feedforward, not correction. Low confidence: lead with what's working, then the gap. High confidence: lead with the gap directly.
Structure:
Avoid:
No em dashes. No throat-clearing, generic optimism, or unsupported claims. Banned words: delve, crucial, robust, comprehensive, nuanced, multifaceted, furthermore, moreover, additionally, pivotal, landscape, tapestry, underscore, foster, showcase, intricate, vibrant, fundamental, significant, interplay.
After every run, silently update state.
~/.devloop/
observations/ # append-only, one file per domain
resilience.md
product-taste.md
directing-ai.md
agent-fluency.md
verification.md
distribution.md
business.md
profile.md # projects, workflow, patterns, readiness, motivation
history.jsonl # one line per recommendation# [Domain Name]
- YYYY-MM-DD | signal | concept | observation text | source categoryThe date is when the evidence happened, not when the scan ran. Signal is one of: strong positive, weak positive, strong negative, weak negative. Concepts are defined in domain files under domains/. Use the exact concept names. Examples: context engineering, web presence & SEO.
Source categories:
codebase — from anything in the codebaseCLI session — from Claude Code logsdesktop session — from Claude Desktop logsgit history — from anything gitweb profile — from anything onlineuser input — from the user's direct responses to our questions only---
name: ""
background: ""
trainingAge: ""
stage: "" # builder journey, one sentence (e.g. "launched first product but stuck on distribution")
crossProject: false
createdAt: ""
lastRun: ""
urls:
products: []
github: []
twitter: []
---
## Projects
[All projects. For each: name, one-line description, stack, stage
(prototyping / building / launched / revenue), traction, URL if any.
Updated each run from scan.]
## Workflow & tools
[Full AI stack: coding agents, IDE, MCP servers, Claude skills, AI services,
libraries, deploy targets, test frameworks, CI/CD.
How they work: spec-first, vibe code, parallel agents, etc.
Communication style (directive/exploratory, terse/verbose).
Updated each run from scan + user input.]
## Deep patterns
[Patterns spanning multiple domains, projects, or time.
Each with: evidence, domains involved, confidence, date.
Only include patterns that would change a recommendation.
Internal state — no filler, no compliments.]
## What drives them
[What they optimize for: shipping speed, craft, revenue, learning?
How they respond to feedback — what framing lands, what they act on vs ignore.
Inferred from sessions and updated as recommendations are acted on (or ignored).
Sparse on first run, richer over time.]
## Readiness
[Current focus, stuck point, what just happened (shipped? pivoted? hit a wall?).
Updated every run.]
## Competency snapshot
[Stored verbatim from the most recent onboarding/run output so we can display it
directly. Updated after each scan if there are new observations.]{
"date": "...",
"domain": "...",
"type": "...", // recommendation type: correction, reinforcement, introduction, or refinement
"contentType": "...", // content format: article, podcast, video, paper, thread, etc.
"source": "...",
"title": "...",
"url": "...",
"summary": "...",
"actedOn": null, // updated on subsequent scans: true if acted on, false if not
}~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.