Skip to content

dz recommend

dz recommend takes a task description and produces three categories of recommendations: individual skills, preset bundles, and npx toolkits (full pipelines). It decomposes the task into topics, matches them against the skill/preset/toolkit knowledge bases, and falls back to learned patterns from dz pretrain / dz teach when the task is too generic.

Terminal window
# Recommend for a specific task
dz recommend "set up CI/CD with security scanning"
# Another task
dz recommend "audit the auth module for vulnerabilities"
dz recommend "build a defi swap integration"

dz recommend takes a single quoted task description as a positional argument. It has no flags.

dz recommend matches the task against 30 topic dimensions (the TOPIC_KEYWORDS map). The topic keys are:

Group Topics
Build / engineering api, testing, ci-cd, security, database, debug, frontend, git, review, monorepo
Infrastructure kubernetes, docker, terraform, monitoring, incident
Data & integrations data, search, email, productivity, scrape, docs, social
Domain web3, design-thinking, product, academic, quality, health, research

Each topic carries a set of keywords (for example security → security, audit, vulnerability, owasp, injection, auth, codeql, sast). Matched topics drive the skill, preset, and toolkit recommendations.

A typical dz recommend output has three sections:

Individual skills that match the task topics:

SKILL RECOMMENDATIONS
─────────────────────
terraform topic: terraform
github-actions topic: ci-cd
security-audit topic: security

Preset bundles that cover the topics:

PRESET RECOMMENDATIONS
──────────────────────
devops 27 skills (covers ci-cd, terraform, kubernetes, observability)
qe-engineer 20 skills (covers testing, coverage, quality)

Suggested npx toolkits for deeper workflows (from TOOLKIT_KB):

FULL PIPELINE (npx toolkits)
────────────────────────────
agentic-qe npm install -g agentic-qe && aqe init --auto
skills-feature-adr npx @dzhechkov/skills-feature-adr init
skills-bto npx @dzhechkov/skills-bto init
keysarium npx @dzhechkov/keysarium init

When the task is too generic to match distinctive topics, dz recommend falls back to patterns learned from dz pretrain. This ensures useful recommendations even without explicit topic signals.

Terminal window
# A vague task
dz recommend "help me improve the project"
# → uses pretrain patterns + any manual dz teach patterns

If neither pretrain data nor topic signals are available, run dz pretrain first to bootstrap recommendations.

Recommendations improve over time as you teach patterns. To accelerate learning, teach patterns explicitly:

Terminal window
# Signal that your project follows a specific convention
dz teach "we use vitest not jest" --domain testing
dz teach "all APIs are OpenAPI 3.1 spec-first" --domain api
# Re-run recommendations
dz recommend "add API integration tests"
Terminal window
# CI/CD with security
dz recommend "set up CI/CD with security scanning"
# Quality engineering
dz recommend "increase test coverage and catch flaky tests"
# Research / product
dz recommend "do product discovery for a new feature"