惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Blog — PlanetScale
Blog — PlanetScale
B
Blog
A
About on SuperTechFans
大猫的无限游戏
大猫的无限游戏
爱范儿
爱范儿
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
H
Help Net Security
H
Hackread – Cybersecurity News, Data Breaches, AI and More
博客园 - 三生石上(FineUI控件)
有赞技术团队
有赞技术团队
酷 壳 – CoolShell
酷 壳 – CoolShell
WordPress大学
WordPress大学
IT之家
IT之家
D
Docker
Google DeepMind News
Google DeepMind News
罗磊的独立博客
T
The Blog of Author Tim Ferriss
aimingoo的专栏
aimingoo的专栏
博客园 - 叶小钗
Recent Announcements
Recent Announcements
阮一峰的网络日志
阮一峰的网络日志
D
DataBreaches.Net
博客园 - 司徒正美
Engineering at Meta
Engineering at Meta

Show HN

Show HN: AI agents for UK GDAD PCF roles and their skills The Two Pillars: Mixer Mode and Meta-Software in the Reorganization of Software Work After AI GitHub - JaiCode08/teleport-env What 1,000+ Harness Experiments Taught Me About Self-Improving Agents Show HN: Liiists, a Markdown-first, iOS and CLI list app SwiperTab – Get this Extension for 🦊 Firefox (en-US) GitHub - kouhxp/fftext: Summarize, explain, fact-check, or translate any text, URL, or file. No GPU. No cloud. One command GitHub - sweetpad-dev/sweetpad: Develop Swift/iOS projects using VSCode GitHub - dogmaticdev/IRON: IRON a.k.a. Intermediate Representation Object Notation is a Interpreter/Database that is used to create Programming Languages. GitHub - sjhalani7/vaen: Package your AI coding harness into a portable .agent file, and share it across repos, teams, & the community without ever having to copy-paste instructions, skills, MCP config, or secrets. Show HN: Gandalf the Grader Show HN: Citadeld – replay any CI failure locally from a single file GitHub - tdortman/cuSBF: High-Performance GPU Super Bloom Filter coral-ai/claude-code-token-xray at main · Coral-Bricks-AI/coral-ai GitHub - ulyssestenn/funes: Funes is a Git-based framework for LLM-managed knowledge work: an AI Librarian ingests raw sources, builds an interlinked Markdown knowledge base, and uses it to produce cited reports, analyses, and other outputs. GitHub - ThatXliner/gah: Git Add Hunk, built for agents to use GitHub - harmont-dev/harmont-cli: Command-line client for the Harmont CI platform GitHub - brooksmcmillin/mcp-authflow: OAuth 2.0 Authorization Server framework for MCP servers GitHub - javaid-codes/audit-supply-chain-agents GitHub - amorey/gochan: A small library of common channel architectures for Go, inspired by Rust GitHub - arifozgun/OpenGem: Free, Open-Source AI API Gateway with Gemini, OpenAI & Anthropic Compatibility in 1 file GitHub - Pranesh950/BioPetals: 🌸 Run BIOxAI models at home, BitTorrent-style. Fine-tuning and inference up to 10x faster than offloading GitHub - cnguyen14/bounty-doctor: Diagnose a GitHub bounty issue before you waste hours: detects honeypot scam repos, AI-bot attempt swarms, and stale contests. Show HN: CoreMCP – MCP Server for On-Prem DBs Show HN: KittyHTML – Render HTML/CSS as an inline image in your terminal GitHub - bingud/filemat: Web-based file manager Show HN: TruthLens – Free multi-signal deepfake image detector GitHub - apexlocal-jz/claude-usage-tray: Windows system-tray app showing your Claude Code rate-limit usage at a glance. Zero deps, ~300 lines of PowerShell. Cross-IDE (works regardless of VS Code, Cursor, plain terminal). Release v0.1.2.1 · kouhxp/yapsnap GitHub - noopolis/moltnet: Self-hostable chat network for AI agents. Pre-built bridges for Claude Code, Codex, and the Claws. Rooms, DMs, history. No Slack bots, no Matrix, no glue code.
GitHub - DanielZ1-tech/shelve: Automatically sorts your D...
danielzx1 · 2026-06-21 · via Show HN

A native macOS menu bar app that automatically organizes your Downloads folder. Built entirely in Swift and SwiftUI — no Python, no Electron.

macOS Swift License


Features

  • Auto-classify — watches your Downloads folder and sorts files into subfolders automatically
  • Smart rules — match by file extension, keyword, or date (older than X days, newer than X weeks, etc.)
  • Auto-rename — add date prefixes, lowercase filenames, replace spaces, add custom prefixes/suffixes
  • Move to Trash — rules can trash files instead of sorting them (great for old installers)
  • TF-IDF search — fast full-text search across all your organized files
  • History mode — see every move Shelve has made, with one-click undo
  • Setup wizard — first-launch onboarding to get you configured in seconds
  • Liquid Glass UI — native macOS 26 design language throughout

Getting Started

Requirements

  • macOS 26+
  • Xcode 16+

Run in Xcode

  1. Clone the repo and open the shelve-native folder in Xcode (it detects Package.swift automatically)
  2. Set the scheme to Shelve and destination to My Mac
  3. Hit ⌘R

Build a distributable .app

# After building in Xcode (⌘B):
./build-app.sh

Drag Shelve.app to /Applications.


Keyboard Shortcuts

Shortcut Action
⌘⇧F Open search
⌘K Classify now
⌘Z Undo last move
↑ ↓ Navigate results
Tab Toggle Files / History
Open in Finder
Close search

How Rules Work

Each rule has:

  • Extensions — e.g. .pdf, .docx
  • Keywords — matched against the filename
  • Date conditions — e.g. "modified older than 30 days"
  • Rename steps — applied in order before moving
  • Move to Trash — trashes the file instead of sorting it

A file is moved if it matches an extension or keyword or any date condition. Rules are fully editable in Settings → Rules.


Config

Stored at ~/Library/Application Support/Shelve/config.json. Editable via the Settings window (menu bar icon → Settings).


Project Structure

File Purpose
AppDelegate.swift App entry point, setup wizard gate
MenuBarManager.swift Menu bar icon and menu
SearchPanel.swift Native NSPanel for the search window
SearchView.swift SwiftUI search UI
SearchEngine.swift TF-IDF search in pure Swift
Classifier.swift Rule matching, file moves, trash, rename
FileWatcher.swift FSEvents-based folder watching
Config.swift JSON config persistence
Models.swift Shared data types
SetupWizard.swift First-launch onboarding flow
SettingsView.swift Settings window (General, Rules, About)