Rebuild website from scratch on Tailwind v4 + shadcn/ui

- Fresh Astro 5 project with Tailwind v4 and shadcn/ui olive preset
- All shadcn components installed (Card, Button, Badge, Separator, etc.)
- Homepage with hero, terminal demo, workflows, agents, sources, compute
- Full docs system with 24 markdown pages across 5 sections
- Sidebar navigation with active state highlighting
- Prose styles for markdown content using shadcn color tokens
- Dark/light theme toggle with localStorage persistence
- Shiki everforest syntax themes for code blocks
- 404 page with VT323 font
- /docs redirect to installation page
- GitHub star count fetch
- Earthy green/cream oklch color palette matching TUI theme

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Advait Paliwal
2026-03-24 15:57:03 -07:00
parent 7d3fbc3f6b
commit 8f8cf2a4a9
61 changed files with 9369 additions and 2633 deletions

View File

@@ -1,40 +1,48 @@
---
title: AlphaXiv
description: Paper search and analysis tools
description: Search and retrieve academic papers through the AlphaXiv integration.
section: Tools
order: 1
---
## Overview
AlphaXiv is the primary academic paper search and retrieval tool in Feynman. It provides access to a vast corpus of research papers, discussion threads, citation metadata, and full-text PDFs. The researcher agent uses AlphaXiv as its primary source for academic content.
AlphaXiv powers Feynman's academic paper workflows. All tools require an alphaXiv account — sign in with `feynman alpha login`.
## Authentication
## Tools
AlphaXiv requires authentication. Set it up during initial setup or at any time:
### alpha_search
```bash
feynman alpha login
```
Paper discovery with three search modes:
Check your authentication status:
- **semantic** — Meaning-based search across paper content
- **keyword** — Traditional keyword matching
- **agentic** — AI-powered search that interprets your intent
```bash
feynman alpha status
```
### alpha_get_paper
You can also manage AlphaXiv auth from inside the REPL with `/alpha-login`, `/alpha-status`, and `/alpha-logout`.
Fetch a paper's report (structured summary) or full raw text by arXiv ID.
## What it provides
### alpha_ask_paper
AlphaXiv gives Feynman access to several capabilities that power the research workflows:
Ask a targeted question about a specific paper. Returns an answer grounded in the paper's content.
- **Paper search** -- Find papers by topic, author, keyword, or arXiv ID
- **Full-text retrieval** -- Download and parse complete PDFs for in-depth reading
- **Citation metadata** -- Access citation counts, references, and citation chains
- **Discussion threads** -- Read community discussions and annotations on papers
- **Related papers** -- Discover connected work through citation graphs and recommendations
### alpha_annotate_paper
## How it is used
Add persistent local notes to a paper. Annotations are stored locally and persist across sessions.
You do not invoke AlphaXiv directly in most cases. The researcher agent uses it automatically during workflows like deep research, literature review, and peer review. When you provide an arXiv ID (like `arxiv:2401.12345`), Feynman fetches the paper through AlphaXiv.
### alpha_list_annotations
AlphaXiv search is especially powerful when combined with citation chaining. The researcher agent can follow references from a relevant paper to discover foundational work, then follow forward citations to find papers that built on it. This produces a much more complete picture than keyword search alone.
Recall all annotations across papers and sessions.
## Configuration
### alpha_read_code
AlphaXiv configuration is managed through the CLI commands listed above. Authentication tokens are stored in `~/.feynman/auth/` and persist across sessions. No additional configuration is needed beyond logging in.
Read source code from a paper's linked GitHub repository. Useful for auditing or replication planning.
## Without AlphaXiv
If you choose not to authenticate with AlphaXiv, Feynman still functions but with reduced academic search capabilities. It falls back to web search for finding papers, which works for well-known work but misses the citation metadata, discussion threads, and full-text access that AlphaXiv provides. For serious research workflows, AlphaXiv authentication is strongly recommended.

View File

@@ -1,34 +1,50 @@
---
title: Preview
description: Preview generated artifacts in browser or PDF
description: Preview generated research artifacts as rendered HTML or PDF.
section: Tools
order: 4
---
## Overview
The `preview_file` tool opens generated artifacts in your browser or PDF viewer.
The preview tool renders generated artifacts as polished HTML or PDF documents and opens them in your browser or PDF viewer. This is particularly useful for research briefs, paper drafts, and any document that contains LaTeX math, tables, or complex formatting that does not render well in a terminal.
## Usage
Inside the REPL:
Inside the REPL, preview the most recent artifact:
```
/preview
```
Or Feynman will suggest previewing when you generate artifacts that benefit from rendered output (Markdown with LaTeX, HTML reports, etc.).
Feynman suggests previewing automatically when you generate artifacts that benefit from rendered output. You can also preview a specific file:
```
/preview outputs/scaling-laws-brief.md
```
## Requirements
Preview requires `pandoc` for PDF/HTML rendering. Install it with:
Preview requires `pandoc` for Markdown-to-HTML and Markdown-to-PDF rendering. Install the preview dependencies with:
```bash
feynman --setup-preview
```
On macOS with Homebrew, the setup command attempts to install pandoc automatically. On Linux, it checks for pandoc in your package manager. If the automatic install does not work, install pandoc manually from [pandoc.org](https://pandoc.org/installing.html) and rerun `feynman --setup-preview` to verify.
## Supported formats
- Markdown (with LaTeX math rendering)
- HTML
- PDF
The preview tool handles three output formats:
- **Markdown** -- Rendered as HTML with full LaTeX math support via KaTeX, syntax-highlighted code blocks, and clean typography
- **HTML** -- Opened directly in your default browser with no conversion step
- **PDF** -- Generated via pandoc with LaTeX rendering, suitable for sharing or printing
## How it works
The `pi-markdown-preview` package handles the rendering pipeline. For Markdown files, it converts to HTML with a clean stylesheet, proper code highlighting, and rendered math equations. The preview opens in your default browser as a local file.
For documents with heavy math notation (common in research drafts), the preview ensures all LaTeX expressions render correctly. Inline math (`$...$`) and display math (`$$...$$`) are both supported. Tables, citation lists, and nested blockquotes all render with proper formatting.
## Customization
The preview stylesheet is designed for research documents and includes styles for proper heading hierarchy, code blocks with syntax highlighting, tables with clean borders, math equations (inline and display), citation formatting, and blockquotes. The stylesheet is bundled with the package and does not require any configuration.

View File

@@ -1,26 +1,47 @@
---
title: Session Search
description: Search prior Feynman session transcripts
description: Search prior Feynman session transcripts to recall past research.
section: Tools
order: 3
---
## Overview
The session search tool recovers prior Feynman work from stored session transcripts. Every Feynman session is persisted to disk, and session search lets you find and reference past research, findings, and generated artifacts without starting over.
The `session_search` tool recovers prior Feynman work from stored session transcripts. Useful for picking up previous research threads or finding past findings.
## Installation
Session search is an optional package. Install it with:
```bash
feynman packages install session-search
```
Once installed, the `/search` slash command and automatic session recall become available in all future sessions.
## Usage
Inside the REPL:
Inside the REPL, invoke session search directly:
```
/search
/search transformer scaling laws
```
Or use the tool directly — Feynman will invoke `session_search` automatically when you reference prior work.
You can also reference prior work naturally in conversation. Feynman invokes session search automatically when you mention previous research or ask to continue earlier work. For example, saying "pick up where I left off on protein folding" triggers a session search behind the scenes.
## What it searches
- Full session transcripts
- Tool outputs and agent results
- Generated artifacts and their content
Session search indexes the full contents of your session history:
- Full session transcripts including your prompts and Feynman's responses
- Tool outputs and agent results from workflows like deep research and literature review
- Generated artifacts such as drafts, reports, and comparison matrices
- Metadata like timestamps, topics, and workflow types
The search uses both keyword matching and semantic similarity to find relevant past work. Results include the session ID, timestamp, and relevant excerpts so you can quickly identify which session contains the information you need.
## When to use it
Session search is valuable when you want to pick up a previous research thread without rerunning an expensive workflow, find specific findings or citations from a past deep research session, reference prior analysis in a new research context, or check what you have already investigated on a topic before launching a new round.
## How it works
The `@kaiserlich-dev/pi-session-search` package provides the underlying search and indexing. Sessions are stored in `~/.feynman/sessions/` by default (configurable with `--session-dir`). The index is built incrementally as new sessions complete, so search stays fast even with hundreds of past sessions.

View File

@@ -1,34 +1,57 @@
---
title: Web Search
description: Web search routing and configuration
description: Web search routing, configuration, and usage within Feynman.
section: Tools
order: 2
---
Feynman's web search tool retrieves current information from the web during research workflows. It supports multiple simultaneous queries, domain filtering, recency filtering, and optional full-page content retrieval. The researcher agent uses web search alongside AlphaXiv to gather evidence from non-academic sources like blog posts, documentation, news, and code repositories.
## Routing modes
Feynman supports three web search backends:
Feynman supports three web search backends. You can configure which one to use or let Feynman choose automatically:
| Mode | Description |
|------|-------------|
| --- | --- |
| `auto` | Prefer Perplexity when configured, fall back to Gemini |
| `perplexity` | Force Perplexity Sonar |
| `gemini` | Force Gemini (default) |
| `perplexity` | Force Perplexity Sonar for all web searches |
| `gemini` | Force Gemini grounding (default, zero-config) |
## Default behavior
The default path is zero-config Gemini Browser via a signed-in Chromium profile. No API keys required.
The default path is zero-config Gemini grounding via a signed-in Chromium profile. No API keys are required. This works on macOS and Linux where a Chromium-based browser is installed and signed in to a Google account.
## Check current config
For headless environments, CI pipelines, or servers without a browser, configure an explicit API key for either Perplexity or Gemini in `~/.feynman/web-search.json`.
## Configuration
Check the current search configuration:
```bash
feynman search status
```
## Advanced configuration
Edit `~/.feynman/web-search.json` to configure the backend:
Edit `~/.feynman/web-search.json` directly to set:
```json
{
"route": "auto",
"perplexityApiKey": "pplx-...",
"geminiApiKey": "AIza..."
}
```
- Gemini API keys
- Perplexity API keys
- Custom routing preferences
Set `route` to `auto`, `perplexity`, or `gemini`. When using `auto`, Feynman prefers Perplexity if a key is present, then falls back to Gemini.
## Search features
The web search tool supports several capabilities that the researcher agent leverages automatically:
- **Multiple queries** -- Send 2-4 varied-angle queries simultaneously for broader coverage of a topic
- **Domain filtering** -- Restrict results to specific domains like `arxiv.org`, `github.com`, or `nature.com`
- **Recency filtering** -- Filter results by date, useful for fast-moving topics where only recent work matters
- **Full content retrieval** -- Fetch complete page content for the most important results rather than relying on snippets
## When it runs
Web search is used automatically by researcher agents during workflows. You do not need to invoke it directly. The researcher decides when to use web search versus paper search based on the topic and source availability. Academic topics lean toward AlphaXiv; engineering and applied topics lean toward web search.