Files

1.5 KiB

AI Integration Guidelines

Search design

Search should support at least two useful modes:

Examples: tags, authors, categories, titles, summary fields

Support grep-like workflows and integration with tools such as ripgrep.

Do not require semantic/vector search as a baseline feature.

If semantic search is ever added later, it should be optional and must not displace simple grep/database search.

Summarization design

Summarization should produce reusable structured outputs.

Summarization goals

A summary should be useful for:

  • later human review
  • grep-style reverse lookup
  • building daily/weekly reports
  • indexing by problem/method/result
  • personal research triage

Summarization output

Prefer generating:

  • summary.json as the canonical structured output
  • summary.md rendered from JSON

Do not make free-form Markdown the only output.

Prompting guidelines

Prompts should instruct the model to:

  • extract factual information
  • avoid unsupported claims
  • use concise and stable language
  • prefer controlled vocabulary when available
  • return structured JSON only
  • use null or empty lists for unclear fields rather than hallucinating

Provider abstraction

The summarizer should not be tightly coupled to a single LLM provider.

Use a provider abstraction so the project can support:

  • OpenAI-compatible APIs
  • local models later if desired
  • different prompt templates and vocabularies