Skip to content

Latest commit

 

History

321 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TierNote icon

TierNote

Notes from first principles.
Reduce complexity to what matters, make priorities visible, and turn notes into action.

Latest release Release build Platforms AGPL-3.0-or-later license

Website · Download · 简体中文 · Feedback

TierNote desktop home

Overview

TierNote is a cross-platform desktop note agent built from a first-principles idea: before adding more information, make what matters clear. Its editable T1–T5 priority map keeps important notes visible, while local-first AI can search, organize, summarize, and create without turning the app into a coding tool or task manager.

Project Current state
Desktop Windows, macOS, Linux
Storage Local Markdown library and local conversation records
Model protocols OpenAI-compatible APIs and Anthropic Messages API
Design principle First-principles decomposition through visible T1–T5 tiers
Model efficiency DeepSeek prefix-cache reuse and usage visibility
License AGPL-3.0-or-later

Release binaries are currently unsigned. Windows and macOS may show an unverified-publisher warning during installation.

What it does

  • First-principles workspace — reduce a complicated body of notes to visible T1–T5 priorities, then build decisions and outputs from what matters.
  • DeepSeek-aware AI chat — stable request prefixes improve cache reuse; requests, cache hits, tokens, context use, and estimated cost remain visible.
  • Library Graph retrieval — searches titles, paths, headings, body text, Markdown links, and nearby notes without an embedding API, vector database, or indexing tokens.
  • Local-first notes — browse and edit ordinary Markdown files in a restrained three-pane desktop workspace.
  • T1–T5 priorities — rank and reorder notes directly from Home so the important work remains legible.
  • My Contexts — selectively expose goals, experience, lessons, priorities, and key records to AI retrieval.
  • Media to notes — turn supported video or audio links and local media files into structured notes through cloud or local speech recognition.
  • Document intake — read text, Markdown, HTML, DOCX, PPTX, XLSX, PDF, images, audio, and video through scoped import tools.
  • Phone capture — connect Weixin or Telegram and send private webpage or media links back to the desktop for local processing.
  • Replaceable providers — configure DeepSeek or another OpenAI-compatible endpoint, or use Anthropic's native Messages API.

Install

Download the appropriate installer from the latest GitHub Release, or use the remote installer:

Windows PowerShell

irm https://tiernote.org/install.ps1 | iex

macOS / Linux

curl -fsSL https://tiernote.org/install.sh | sh

Supported platforms

Platform Architectures Packages
Windows x64 NSIS .exe, MSI
macOS Apple Silicon, Intel DMG
Linux x64 AppImage, DEB, RPM
Linux arm64 DEB, RPM

Architecture

flowchart LR
  UI["React + TypeScript UI"] --> IPC["Tauri IPC"]
  IPC --> Core["Rust Note Agent"]
  Core --> Library["Local Markdown Library"]
  Core --> Memory["Local Context & Conversations"]
  Core --> Models["DeepSeek / OpenAI-compatible / Anthropic"]
  Channels["Weixin / Telegram"] --> Core
Loading

Under the hood

  • Desktop shell: Tauri 2 with a React 18, TypeScript, and Vite frontend.
  • Agent runtime: a focused Rust core in agent_loop.rs and agent_tools.rs, built for note search, reading, writing, memory routing, and completion-oriented tool use.
  • Safety boundary: tools operate on the selected library and explicit local files; the agent does not expose arbitrary shell execution or unrestricted filesystem writes.
  • Retrieval: Library Graph builds a lightweight local relationship map from Markdown structure and links, then returns only relevant passages.
  • Context: recent conversation, enabled My Contexts pages, the open note, and relevant library passages are routed separately and compacted locally when needed.
  • Networking: Rust uses reqwest with rustls for model streaming, web reading, release checks, and optional transcription services.
  • Media: local audio decoding uses Symphonia; transcription can use configured cloud services or the local recognition path.

For more detail, see Architecture, Note Agent design, and cost-oriented agent decisions.

Repository layout

Path Purpose
src/ React desktop UI and TypeScript application logic
src-tauri/ Rust backend, agent loop, retrieval, file and media handling
starter-knowledge/ Bilingual first-run library content
tests/ Frontend and shared-logic tests
docs/ Architecture, agent, library, and release documentation
website/ Product site, localized screenshots, installers, and download Worker
.github/workflows/ Version and cross-platform release automation

Development

Prerequisites:

npm ci
npm run library:check
npm run typecheck
npm test
npm run tauri:dev

Useful verification commands:

npm run build
npm run release:check
cargo check --manifest-path src-tauri/Cargo.toml
cargo test --manifest-path src-tauri/Cargo.toml

Privacy and security

  • Your note library and complete conversation records stay on your computer by default.
  • Only requests you initiate send the selected context to your configured model provider.
  • Knowledge-library access is path-scoped and canonicalized to block traversal outside the selected root.
  • Provider configuration, including API keys, is stored as plaintext JSON only in the current user's local TierNote app-data directory. A startup migration moves data from the v0.1.8 location before the app initializes. Configuration is never written into this repository or the note library.
  • No telemetry service is required for the local note workflow.

Release process

Tags matching v* trigger quality checks and native builds for Windows x64, macOS Apple Silicon, macOS Intel, Linux x64, and Linux arm64. See RELEASE.md for the version checklist and asset naming rules.

License & commercial use

Open-source edition — TierNote is free, forever, under the GNU Affero General Public License v3.0 or later (AGPL-3.0-or-later). Companies are welcome to use it as-is. Modified versions distributed to others, and modified versions offered to users over a network, must follow AGPL's source availability requirements. See NOTICE for the legacy MIT notice and THIRD_PARTY_NOTICES.md for third-party acknowledgements.

Commercial & enterprise licensing — A paid commercial license is only needed when you want to step outside AGPL obligations: to customize TierNote and keep the changes closed-source, redistribute it under your own brand or as a white-label product, or embed it in a proprietary product you distribute. Custom development, priority support, and SLAs are also available. Tell us what you are building and we will tailor a plan and quote.

Contact sales: hi@coffeecli.com

Contributing — See CONTRIBUTING.md. Contributions are accepted under the project CLA so commercial relicensing remains possible.

About

帮你省钱的 AI 笔记工具 深度优化 DeepSeek ; The AI note tool that saves you money deeply optimized for DeepSeek

Resources

Contributing

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages