Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

fo-core

Local AI file organizer. Point it at a directory — it categorizes and moves your files using a model running on your own machine. Local by default: Ollama runs on-device, no API key required. Cloud providers are optional extras.

CI License: MIT OR Apache-2.0 Python 3.11+ Version


Prerequisites

  1. Python 3.11 or later — check with python3 --version

  2. Ollama — install from ollama.ai, then start it:

    ollama serve
    

Install

pip install fo-core

Then pull the default AI model (first-time only, ~3 GB):

ollama pull gemma3:4b

Verify optional deps for your files:

fo doctor ~/Downloads

Quick Start

# Preview what would happen — no files are moved
fo organize ~/Downloads ~/Organized --dry-run

# Run it for real
fo organize ~/Downloads ~/Organized

# Changed your mind?
fo undo

Commands

Command What it does
fo organize [SRC] [DEST] Organize files using AI categorization
fo preview [SRC] Dry-run preview without moving files
fo search [QUERY] Full-text search across files
fo analyze [DIR] File statistics and analysis
fo dedupe Find and remove duplicate files
fo suggest AI-powered organization suggestions
fo autotag Auto-tag files based on content
fo copilot Natural-language assistant
fo rules Manage organization rules (YAML)
fo config show|list|edit View or update configuration
fo doctor [DIR] Scan a directory and recommend optional deps
fo daemon start|stop Background file watcher
fo undo / redo / history Operation history and rollback
fo model Select or inspect AI models
fo benchmark Performance benchmarks
fo setup Interactive setup wizard

Full flag documentation: docs/cli-reference.md


AI Providers

Default: Ollama — runs entirely on your machine, no API key needed.

Cloud providers are optional extras:

Provider Install Works with
OpenAI-compatible pip install "fo-core[cloud]" OpenAI, LM Studio, vLLM, Groq
Anthropic Claude pip install "fo-core[claude]" Claude text + vision models
llama.cpp pip install "fo-core[llama]" GGUF models — no Ollama required
MLX (Apple Silicon) pip install "fo-core[mlx]" MLX-optimized local models

Optional Feature Packs

Core file types (PDF, DOCX, XLSX, PPTX, EPUB, ZIP) work out of the box. RAR also works but requires a system-level unrar or unar binary. Install extras for additional capabilities:

Pack Install Adds
media pip install "fo-core[media]" Audio transcription (faster-whisper) + video scene detection. Use fo organize --transcribe-audio for content-aware audio categorization, or verify the install with fo benchmark run --suite audio --transcribe-smoke.
dedup-text pip install "fo-core[dedup-text]" TF-IDF/cosine text deduplication
dedup-image pip install "fo-core[dedup-image]" Image similarity deduplication
scientific pip install "fo-core[scientific]" HDF5, NetCDF, MATLAB formats
cad pip install "fo-core[cad]" DXF/DWG CAD files
search pip install "fo-core[search]" BM25 + vector search
all pip install "fo-core[all]" All of the above

Configuration

Config lives in ~/.config/fo/config.yaml. Override the location with the FO_CONFIG environment variable.

fo config show                                           # view all settings
fo config edit --text-model gemma3:4b  # change text model
fo config edit --device auto                             # change device

Full configuration reference: docs/CONFIGURATION.md


Documentation

Doc Contents
Getting Started Installation options, first run, platform notes
CLI Reference Every command and flag
Configuration All config keys explained
FAQ Common questions and troubleshooting
Troubleshooting Diagnosing connection and model issues

Contributing / Development

See DEVELOPER.md for architecture, local setup, testing, and contribution guidelines.


Releases

Currently 2.0.0-beta.7. The acceptance criteria that were required for this promotion and the contract with public pre-release testers are documented in docs/release/beta-criteria.md.

License

MIT OR Apache-2.0

Metadata

Release files for fo-core 2.0.0b8

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for fo-core 2.0.0b8
File Size Uploaded
fo_core-2.0.0b8.tar.gz 748.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for fo-core 2.0.0b8
File Interpreter ABI Platform
fo_core-2.0.0b8-py3-none-any.whl Python 3 none any Details

Total release size: 1.6 MB

Release files / fo_core-2.0.0b8.tar.gz

Download URL fo_core-2.0.0b8.tar.gz
Size 748.7 kB
Tags Source
SHA-256 checksum
How to use checksums
b3de908dd360b342bf1a15bb4f8645dc8a5e5918efab0f7af3cce8cf4584b66e
BLAKE2b-256 checksum
How to use checksums
bc9d42ac6ee05ec8c06bbd17d74c3693380f9d681a5d402e8688763831bf9142
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 24, 2026.

Transparency log

Release files / fo_core-2.0.0b8-py3-none-any.whl

Download URL fo_core-2.0.0b8-py3-none-any.whl
Size 864.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d309599e806724037f89ccaadfae76501840f888a985306105f804fefa013d9f
BLAKE2b-256 checksum
How to use checksums
5b59c5922a77b218321f059e4f82b2a4228a7320a2f289e32cefcd88a63822db
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 24, 2026.

Transparency log
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page