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.
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 lookupget(template_id)— Direct template accesslookup_raw(topic)— ReturnsPopulatedTemplatedataclassget_summary(skill)— One-line skill summaryprecursor_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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file attune_help-0.1.0.tar.gz.
File metadata
- Download URL: attune_help-0.1.0.tar.gz
- Upload date:
- Size: 372.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b82cc0503736937d6379f15244a9815e4c516c1c386dfc24d8de4f4c1c0cd67e
|
|
| MD5 |
3bec8ab812f6f5c7dcb4185c605d41e7
|
|
| BLAKE2b-256 |
afcd02c13344873f0d79e68b22dceec0bbcbcf8ff5a3b6e943a3a7d5d39fe194
|
File details
Details for the file attune_help-0.1.0-py3-none-any.whl.
File metadata
- Download URL: attune_help-0.1.0-py3-none-any.whl
- Upload date:
- Size: 671.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c27745bfa22543e844a0928981938d2583de887e8ea3f12132caae76e9c88ccf
|
|
| MD5 |
b93207db07b95df587194c9632fc2445
|
|
| BLAKE2b-256 |
087bf4ad51ad71766edbae1d2f0f193761f3a1834f510ca7924a5397c321a41c
|