Commit graph

25 commits

Author SHA1 Message Date
d39b0e621d docs: document context diff command in README, getting-started, and history docs
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 14:44:21 +01:00
563ea7accb feat: add context diff command to copy only changed files since last export
Stores per-file djb2 content hashes in history metadata on every export,
enabling a new "Copy context diff" command that compares against the most
recent baseline and copies only new/modified files with [NEW]/[MODIFIED] tags.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 14:43:23 +01:00
660bf028ac chore: set author to tolvitty
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 14:34:22 +01:00
92b3da2fe9 chore: remove GitHub Actions workflow
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 14:28:57 +01:00
bc31779651 docs: update README and docs for export profiles, smart context, and snapshots
- Add export profiles, smart context, and snapshots to README features
- Document export profiles workflow and edge cases in output-targets.md
- Add per-target outputPath and intelligence settings to settings.md
- Add smart-context.md for context intelligence documentation
- Restructure history.md to include snapshots section
- Add new commands to getting-started.md
- Update repo URLs to GitHub

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 14:27:32 +01:00
45a0de063e feat: add multi-target export profiles for one-click multi-format export
Export Profiles bundle targets into named groups, enabling instant
multi-format export (e.g. XML for Claude + Markdown for ChatGPT +
Plain for Gemini) via a single "Export context (multi-target)" command.

- Add ExportProfile interface, generateProfileId, BUILTIN_PROFILES
- Add per-target outputPath override for file output location
- Add export-multi-target command with active profile resolution
- Add ExportProfileModal for creating/editing profiles
- Add profile management UI in Settings > Output
- Add profile dropdown in generator modal for target pre-selection
- Clean up stale profile references on target deletion

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 14:03:45 +01:00
40ce34c9b4 feat: add context snapshots for saving and replaying context recipes
Snapshots capture the file list, template, and formatting config from a
history entry so the context can be regenerated from current vault state.
Stored as JSON in .context-snapshots/ with no auto-cleanup.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 13:45:59 +01:00
06a228847f feat: add dynamic template variables for vault-level data
Expose backlinks, forward links, recent notes, shared tags, folder
siblings, and smart context directly in templates via {{variable}}
and {{variable:N}} syntax. Makes processTemplate async to support
the new resolvers.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 13:31:11 +01:00
acb82971b4 feat: add context intelligence for auto-detecting related notes
Scores vault notes using 5 signals (forward links, backlinks, shared
tags, folder proximity, shared properties) and presents a review modal
with color-coded badges and token budget tracking. Adds "Copy smart
context" command, Intelligence settings tab, and mode: auto preset
support.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 13:25:25 +01:00
Luca G. Oelfke
e7243e3cc1
docs: slim down README and extract detailed docs to docs/
Move comprehensive documentation (settings, templates, output targets,
frontmatter presets, etc.) from the 510-line README into 9 focused files
under docs/. README is now a scannable overview with links to each doc.
Replace GitHub links with Codeberg equivalents.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 12:46:15 +01:00
Luca G. Oelfke
cc2d196911
feat: rename plugin from "Claude Context" to "Promptfire"
Rename before community plugin submission (plugin IDs are permanent).
Updates plugin ID, display name, package name, all class names,
CSS prefix (cc- → pf-), default folders (_claude → _context),
built-in target ID, and all documentation.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 12:42:16 +01:00
Luca G. Oelfke
72f64bcbd9
feat: add dynamic descriptions to settings reflecting current state
Eight settings now show live contextual info (file counts, entry usage,
folder existence) that updates as values change.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 12:22:42 +01:00
Luca G. Oelfke
94c2822340
feat: add search/filter field to settings page
Search input above tabs filters all settings by name and description
in real-time. When a query is active, all tabs render simultaneously
with group headings and non-matching settings are hidden via DOM
toggling. Empty sections and tab groups are hidden entirely. Escape
clears search and restores normal tabbed view.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 11:48:21 +01:00
Luca G. Oelfke
2f3574c63f
feat: add live preview pane and status bar to generator modal
Collapsible preview shows first 30 lines of generated output with
real-time updates (300ms debounce). Status bar displays file count,
token estimate, active target, and output format — all updating as
options change. Token count warns when exceeding target limit.
Clicking target scrolls to config, clicking format cycles options.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 11:39:13 +01:00
Luca G. Oelfke
08b8a180ca
feat: restructure generator modal into two-zone layout
Split the single-column generator modal into a Selection zone (what to
include) and Configuration zone (how to output) using CSS grid, with a
full-width footer for action buttons. Adds note count indicator and
token estimate from existing context files. Responsive: side-by-side
on wide viewports, stacked on narrow.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 11:24:51 +01:00
Luca G. Oelfke
a6cc173293
feat: add collapsible sections within settings tabs
Add reusable CollapsibleSection component with animated chevron and
persisted collapse state. Applied to Sources, Templates, and Output
tabs where natural content groupings exist. General and History tabs
stay flat.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 11:18:44 +01:00
Luca G. Oelfke
de839d81c3
feat: replace scrollable settings page with tabbed layout
Split settings into 5 tabs (General, Sources, Templates, Output,
History) with a sticky tab bar. Persists the last active tab in
plugin settings so it reopens where the user left off.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 11:14:17 +01:00
Luca G. Oelfke
e922523dc9
docs: rewrite AGENTS.md to reflect actual project state
Replace generic Obsidian sample plugin template with project-specific
documentation covering all 15 source files, 6 commands, full settings
schema, and architecture details for each module.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 11:05:03 +01:00
Luca G. Oelfke
d61ce3a5dd
docs: comprehensive README update with all features
- Add badges and centered headings
- Document all features: multi-LLM targets, templates, history,
  section selection, frontmatter presets, context sources
- Add detailed settings documentation
- Add advanced usage section with truncation strategies
- Add quick start guide

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-06 10:53:36 +01:00
Luca G. Oelfke
66b1ac8ffa
feat: add multi-target output system for different LLMs
- Add OutputTarget interface with format, tokens, truncation strategy
- Add built-in targets: Claude (XML, 200k), GPT-4o (MD, 128k), Compact (8k)
- Add ContentTransformer for markdown/xml/plain conversion
- Add TruncationEngine with smart section prioritization
- Add TargetExecutor for processing content per target
- Add target configuration UI in settings with CRUD operations
- Add target selection checkboxes in generator modal
- Primary target goes to clipboard, secondary targets saved as files

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-06 10:48:55 +01:00
Luca G. Oelfke
11fcce0f4c
feat: add frontmatter preset system for one-hotkey context generation
- Parse ai-context block from frontmatter with validation
- Support fields: template, include-linked, link-depth, include-tags,
  exclude-paths, exclude-tags, max-tokens, include-active-note
- Add LinkTraverser for cycle-safe graph traversal of linked notes
- Add TagCollector for collecting files by tags (hierarchical support)
- Token budget enforcement with size-based file prioritization
- New command: "Copy context from frontmatter preset"
- Fallback to generator modal when no preset found
- Clear error messages for invalid preset values

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-06 10:41:41 +01:00
Luca G. Oelfke
c4b83140b5
feat: add granular heading/block selection for context
- Add ContentSelector for parsing heading structure via metadataCache
- Support reference syntax: NoteName#Heading and NoteName^blockid
- Add FileSelectorModal with expandable heading tree and checkboxes
- Live token counter updates as sections are selected/deselected
- New command: "Copy context (select sections)"
- Add "Select Sections..." button in generator modal
- Mark partially selected files with "(partial)" suffix
- Cascading selection: toggling parent affects all children

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-06 10:38:13 +01:00
Luca G. Oelfke
f5acee3356
feat: add context history with versioning and diff
- Add HistoryManager for saving generated contexts as JSON files
- Track metadata: timestamp, template, files, sources, tokens, user notes
- Add history modal with list view, detail view, and comparison
- Diff view shows added/removed files, sources, and size changes
- Configurable: storage folder, max entries, auto-cleanup days
- Feature is opt-in (disabled by default)
- Add "View context history" command

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-06 10:34:41 +01:00
Luca G. Oelfke
1ad0adeb06
feat: add modular source system and prompt templates
Sources:
- Add ContextSource system for additional context (freetext, files, shell)
- Support prefix/suffix positioning for sources
- Include source management UI in settings with add/edit/delete/test
- Platform checks for desktop-only features (file access, shell commands)

Templates:
- Add PromptTemplate system with placeholder support
- Placeholders: {{context}}, {{selection}}, {{active_note}}, {{date}}, etc.
- Conditional blocks: {{#if variable}}...{{else}}...{{/if}}
- 5 built-in starter templates (Code Review, Summary, Q&A, Continue, Explain)
- Template management in settings with import/export as JSON
- Template selection dropdown in generator modal

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-06 10:29:56 +01:00
Luca G. Oelfke
2d08546847
feat: initial release of Claude Context plugin
Obsidian plugin to copy vault context files to clipboard for AI assistants.

Features:
- Copy vault context files to clipboard with one hotkey
- Context generator with configurable conventions
- Settings for folder, separator, preview, exclusions
- Auto-detect vault folder structure
- Include active note option
- Ribbon icon for quick access
- Full English UI and documentation

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-05 16:55:43 +01:00