Skip to main content

Lightweight help runtime with progressive depth and audience adaptation.

Project description

attune-help

Lightweight help runtime with progressive depth and audience adaptation. Read project help templates generated by attune-ai.

Install

pip install attune-help

Quick Start

from attune_help import HelpEngine

engine = HelpEngine(template_dir=".help/templates")

# Progressive depth: concept -> task -> reference
print(engine.lookup("security-audit"))   # concept
print(engine.lookup("security-audit"))   # task
print(engine.lookup("security-audit"))   # reference

How It Works

Each topic has three depth levels:

Level Type What you get
0 Concept What is it? When to use it?
1 Task Step-by-step how-to
2 Reference Full detail, edge cases

Repeated lookups on the same topic auto-advance. A new topic resets to concept.

Renderers

# Plain text (default)
engine = HelpEngine(renderer="plain")

# Rich terminal output (requires `pip install attune-help[rich]`)
engine = HelpEngine(renderer="cli")

# Claude Code inline format
engine = HelpEngine(renderer="claude_code")

# Auto-detect environment
engine = HelpEngine(renderer="auto")

Template Directory

Templates are markdown files with YAML frontmatter:

.help/templates/
  security/
    concept.md
    task.md
    reference.md
  api/
    concept.md
    task.md
    reference.md

Generate templates with attune-ai:

pip install attune-ai
# Then in Claude Code:
/coach init

Or create them manually — any markdown file with feature, depth, and source_hash frontmatter fields works.

Demo Templates

The package includes a demo feature showing the progressive depth format:

from attune_help import get_demo_path

# Copy to your project
import shutil
shutil.copytree(
    get_demo_path() / "security-audit",
    ".help/templates/security-audit",
)

The security-audit/ demo contains concept.md, task.md, and reference.md — the three depth levels that /coach init generates for each feature.

API

HelpEngine

HelpEngine(
    template_dir=None,    # Override template path
    storage=None,         # Session storage backend
    renderer="plain",     # Output renderer
    user_id="default",    # Session tracking ID
)

Methods:

  • lookup(topic) — Progressive depth lookup
  • get(template_id) — Direct template access
  • lookup_raw(topic) — Returns PopulatedTemplate dataclass
  • get_summary(skill) — One-line skill summary
  • precursor_warnings(file_path) — File-aware warnings

SessionStorage Protocol

Implement custom storage backends:

from attune_help import SessionStorage

class RedisStorage(SessionStorage):
    def load(self, user_id: str) -> dict: ...
    def save(self, user_id: str, state: dict) -> None: ...

License

Apache 2.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

attune_help-0.2.0.tar.gz (376.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

attune_help-0.2.0-py3-none-any.whl (676.4 kB view details)

Uploaded Python 3

File details

Details for the file attune_help-0.2.0.tar.gz.

File metadata

  • Download URL: attune_help-0.2.0.tar.gz
  • Upload date:
  • Size: 376.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.11

File hashes

Hashes for attune_help-0.2.0.tar.gz
Algorithm Hash digest
SHA256 071da0d131590f71272504bfac747d3fa03d258f2584ad222db95aad1f4812b5
MD5 afafdf21cedaf2fc0cc1b4e3031e9230
BLAKE2b-256 e3cb56118af396d5ca561795deb2520a80b90de85c0bd1be4ba6b67871cd7598

See more details on using hashes here.

File details

Details for the file attune_help-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: attune_help-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 676.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.11

File hashes

Hashes for attune_help-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 58b987a78dfd88022fcdd167b77443a10cb26176419b7ea28409bc23aea24029
MD5 bc9438ec801e8f99650467928067dbf7
BLAKE2b-256 e0ffc1592caa652a4955a98640b468f1d84f1c78d508385a240fb07cca4ee5ec

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page