Comparison: Help System vs Alternatives

Context

The help system is a progressive-depth template engine that generates, populates, and maintains contextual documentation for project features. It covers the full lifecycle: scanning source code to propose features, generating templates at three depths (concept, task, reference), adapting output to different audiences, and tracking staleness when source files change.

Feature comparison

The table below compares the help system's built-in entry points against two common alternatives: writing ad-hoc documentation by hand, and using a generic static-site generator.

Capability Help system Hand-written docs Generic static-site generator
Feature discovery scan_project() proposes features from source automatically Manual — you identify features yourself Manual
Template generation generate_feature_templates() produces concept, task, and reference depths in one call Author each depth by hand Typically single-depth pages
Progressive depth populate_progressive() advances depth per session; reset_session() resets on topic change Not applicable Not applicable
Staleness detection check_staleness() hashes source files; run_maintenance() regenerates stale templates automatically No detection — drift is silent No detection
Audience adaptation render_claude_code(), render_cli(), render_marketplace() target specific channels from the same template Duplicate content per channel Requires custom theming per target
Contextual warnings get_precursor_warnings(file_path) surfaces relevant help when a specific file is being edited Not applicable Not applicable
Workflow-triggered help get_workflow_help(workflow_name) returns up to 3 relevant templates after a workflow completes Not applicable Not applicable
Feedback loop record_template_feedback() updates a confidence score; get_usage_weights() tunes relevance over time None None
Tag-based discovery search_by_tag() and list_tags() let you navigate templates by tag, optionally sorted by usage Manual index maintenance Depends on plugin
CI maintenance hook run_hook() integrates into CI; run_maintenance(dry_run=True) previews changes without writing None None

When NOT to use the help system

Use the help system when…

Situation Recommended entry point
You want to discover what features exist in a codebase scan_project()proposals_to_manifest()
You need concept, task, and reference docs generated for a feature generate_feature_templates()
You want help that adapts as a user asks follow-up questions populate_progressive() + reset_session()
You need to warn a user before they edit a specific file get_precursor_warnings(file_path)
You want help surfaced automatically after a workflow finishes get_workflow_help(workflow_name)
Your templates may drift as source files change check_staleness() + run_maintenance() or run_hook() in CI
You need to render the same template for Claude Code, CLI, and marketplace render_claude_code(), render_cli(), render_marketplace()
You want to measure whether a template is actually useful record_template_feedback() + get_template_confidence()

The help system is the right choice when you need the full pipeline — discovery, generation, population, adaptation, and maintenance — rather than any single step in isolation. If you only need one step, the corresponding module (help.bootstrap, help.generator, help.staleness, etc.) is importable independently.

Source files

Tags: help, templates, docs