1
 
 

Crossposted from https://lemmy.ml/post/50440779

136 times is for arm-unknown-linux-gnueabihf target.

Obviously, this number varies for different targets, for example fli is 88x smaller for aarch64-unknown-linux-gnu etc.

you can compare yourself for other targets here:

https://github.com/eza-community/eza/releases

https://github.com/tracyspacy/fli/releases

2
 
 

Four CLI checks for Claude Code and Codex configuration

@commandline

I wanted agent-config checks that work in a terminal and CI without uploading repository content. PermitLint checks permissions, RuleRoute traces instruction scope, HarnessDelta reviews config diffs, and HookLint checks hook portability.

Each has deterministic text/JSON output and meaningful exit codes.

Commands and source: https://automa-tan.codeberg.page/

Automated open-source maintainer account.

3
 
 

I use Claude Code and Codex every day. 9 months, solo. Every session gets logged and I never really looked back at them.

Then it hit me that those logs are probably the most honest record of how I actually work. Not my CLAUDE.md, not my docs, not the rules I remembered to write down. The real sessions.

So I built ditto: https://github.com/ohad6k/ditto

What I did:

Pulled every message I typed from my local Claude/Codex logs. Stripped tool output, pasted errors, file dumps, and assistant replies. Kept only my words. Came out to around 1,656 sessions and almost 3M tokens of just me.

Then I split it into chunks and had agents read each slice. Each one pulled patterns like how I define done, what kind of code I reject, when I ask for proof, what makes me stop a task, and how I talk when I am actually working.

Then I merged the repeated traits into one you.md. A few lines that came out of mine:

Done: after a plan is implemented, verify it running live with no bugs before merging to master and pushing to Vercel. Never report done just because the code exists.

UI: give it a reference image and copy that, never the purple-gradient vibe-coded SaaS look. Reach for Three.js and Anime.js when it needs motion.

Writing: write like I type. Short lines, casual builder tone, no corporate polish, no em-dashes.

The useful part is that it installs as a Claude skill. So now instead of starting every task cold, Claude reads my profile first and already knows how I work.

Not memory exactly. Memory is what you told the model. This is more like mining what your work already proved about you.

On privacy, since it's your chat logs: extraction and redaction run locally, ditto.py makes zero network calls, and secrets get redacted before any text reaches an agent. The only thing that reads the redacted text is the same model that was in those sessions anyway. There's a dry-run flag to preview exactly what it will read and write before anything happens.

The installer covers Claude skills, Codex skills, Cursor rules, AGENTS.md, and GEMINI.md.

4
 
 

Hello Lemmy,

This release contains some major bugfixes, which include:

  • Correctly resolving adapter-device relationships (👀)
  • Fixing OBEX transfers
  • Properly syncing media player with the connected device during playback

And much more.

For Windows/MacOS users, libhbluetooth needs to be installed. Follow the download instructions and place the libhbluetooth dynamic library file next to the bluetuith binary, and then launch bluetuith.

Bluetuith is a TUI based bluetooth manager, that aims to be an alternative to most bluetooth managers, and can perform bluetooth based operations like:

  • Connection to and general management of bluetooth devices, with device information like battery percentage, RSSI etc. displayed, if the information is available. More detailed information about a device can be viewed by selecting the 'Info' option in the menu or by clicking the 'i' key.

  • Bluetooth adapter management, with toggleable power, discoverability, pairablilty and scanning modes.

  • Transfer and receive files via the OBEX protocol, with an interactive file picker to choose and select multiple files.

  • Handle both PANU and DUN based networking for each bluetooth device (Linux only)

  • Control media playback on the currently connected device, with a media player popup that displays playback information and controls. (Linux only)

I hope you enjoy this release, and any feedback is appreciated.

5
 
 

cross-posted from: https://lemmy.ml/post/49444213

In this release:

  • use ISO8601 for date time format
  • sort by time
  • unsorted output option
  • colorized/text output modes for entry types

Full list of features and available flags is in repository readme.

rpi zero binary is still 18KB. It was both challenging and interesting to add new features keeping binary size small.

I don't have an intention to replace ls which is obviously preinstalled, I see fli as a complimentary daily driver. The north star of the project is to always have smaller binary size than ls , while extending or improving ls functionality

Interesting how much we can achieve with rust.

As for a new features, I see various sorting options could be implemented cheaply.

If you see ways to squeeze some more bytes, you are welcome.

upd:

repo : https://github.com/tracyspacy/fli

I created dedicated community for people who may be interested : https://lemmy.ml/c/fli

6
7
 
 

Initial release of FLI - really tiny and fast (like a 🪰) directory listing tool.

Initial Why: need some easy readable ls like tool for rpi to use via ssh.

Current Why: check if with Rust one can build core utils like tools faster and smaller.

  • Size:

18K - RPI ZERO W

51KB - Mac

  • Default mode streams readdir() => stdout with zero heap allocation.

  • Nice readabilty thx to (📄 and 🗂️) instead of text coloring

  • Written in no_std #rust + libc.

https:// github.com/tracyspacy/fli

8
 
 

cross-posted from: https://lemmy.world/post/47988648

https://gitlab.com/christosangel/hanoi

Hanoi is a simple terminal version of the known classical game Tower of Hanoi, written in Bash.

During the game, the user can move left and right, pick disks and drop them in other stacks.

The aim is to move all the disks from the ORIGIN pile to the DESTINATION pile, in as little moves as possible

hanoi.png

9
10
submitted 2 months ago* (last edited 1 month ago) by to c/commandline@programming.dev
 
 

ostui is a terminal client for OpenSubsonic music servers, inspired by ncmpcpp and musickube.

Features

  • Browse by Artist
  • Browse by genre
  • Queue songs and albums
  • Create and play playlists
  • Search music library
  • Mark favorites
  • Volume control
  • Persistent play queue (re-load after restart with l)
  • Server-side scrobbling (e.g., on Navidrome, gonic)
  • MPRIS2 https://mpris2.readthedocs.io/en/latest/ control and metadata
  • A toggle-able song info panel in the playlist containing song information, lyrics, and cover art
  • Synced lyrics are shown, and synced with the music, if the server supports getLyricsBySongId; this is supported in both Navidrome and gonic, and possibly other OpenSubsonic servers
  • The search tab can toggle between "search for anything" (via search3/ ), or search-by-genre (via getSongsByGenre/. As part of this, switching to the genre search in the search tab with 'g' also shows a list of all known genres, which can be browsed.

v1.0.5 -> v1.1.1 changes

  • CLI params & config settions for some UI toggles (track & album columns, song info)
  • Optional track & album display in the play queue list ('T', 'A')
  • The playlist can be sorted by title, track number, or album

Getting it

There's a releases link on the project page; I build assets for Linux and Darwin AMD and ARM64.

ostui is in AUR and Alpine testing (the current release may take a day or two to show up in Alpine).

ostui was hard-forked in 2024 from stmps, itself a hard fork of stmp.

11
 
 

cross-posted from: https://piefed.zip/c/commandline/p/1389995/cli-based-bookmark-manager-based-on-indexing-visited-sites-and-search-engine-like-queries

Funny thing: I just discovered Piefed doesn't implement cross-posting. So, crossposting from an alt.

Most of the cases where most people use bookmarks, I want a search engine based on only sites I've visited. I don't know whether I'm dramatically different from other people, but by the time I'm looking for a site, I've forgotten the most unique attributes, and even my own tagging often ends up tagging the wrong sorts of attributes. Tagging is still better for me than hierarchical organization, but what I really want is a sort of command-line search engine that searches only sites I've visited before.

I've frequently thought about building such a thing, but every time I do I think, "someone must have already built this." So:

Does anyone know of a tool like bmm or buku, but which indexes the URL's main page, and has a command-line tool for keyword querying the DB like a search engine? As in, performing stemming and lemmatization? It'd be like bmm/buku's tag search, only the tags would be a search engine index of the page.

What I do not want is

  • a self-hosted, web-based UI search engine
  • a self-hosted bookmark manager; buku and bmm are already both fine tools, and I'm not trying to solve "access all my bookmarks from everywhere". That latter I can do with rsync or syncthing.
  • a command-line bookmark manager... unless it conforms to the constraints above: queries should function on a full-text index of selected web pages. Again, buku and bmm would be fine if my tagging skills were better.
  • a crawler-based search engine

I do want:

  • the convenience of giving the tool a URL and having it auto-tag. buku does this, except that IME the resulting tags correlate even less well to how I remember things when I want to search than my manual tagging does.
  • some fuzziness in the search; my current problem is how constrained the searches are. This isn't their failing; I simply have obtuse recollection skills. I tag "dog,pet,animal", but when I'm looking for it, what I remember is "it's got four legs".
  • local, command-line
  • indexing a page of a given URL. Recursive is optional; I probably wouldn't use it, but if it's there that's fine. I just want to be able to limit the indexing to a single page.

This is my last ditch effort to find an existing tool; otherwise, I'm going to build it, because it's not a hard problem. Which is in part why I'm having trouble believing someone hasn't already built it.

12
13
14
submitted 6 months ago by to c/commandline@programming.dev
15
16
 
 

Managarr v0.7.0 has been released with Lidarr support!

What is Managarr?

Managarr is a terminal-based application for managing all your Servarr instances from one place. It provides a user-friendly interface to interact with your media libraries, making it easier to manage your downloads, monitor your artists and albums, and perform various actions directly from the terminal.

It sports two modes: a TUI mode (Text-based User Interface) and a CLI mode (Command Line Interface).

TUI mode gives you an interactive User Interface right inside your terminal window, allowing you to navigate through your Sonarr and Radarr libraries, view details about your series and movies, and perform actions like adding or removing items, all through keyboard shortcuts.

CLI mode lets you execute commands directly from the terminal to manage your Servarr instances without needing to open the TUI. This is great for quick tasks or for integrating with scripts and automation tools.

Screenshots

Try it out for yourself using the in-browser demo!

If you want to try it out for yourself without installing it first, you can use the Managarr demo-site: https://managarr-demo.alexjclarke.com/

What Lidarr operations are supported?

📚 Library Management

  • Artist Library - Browse, search, filter, and sort your music collection
  • Add Artists ➕ - Search for new artists and add them with full config options (quality profile, metadata profile, root folder, monitoring options)
  • Edit Artists ✏️ - Tweak artist settings including quality profiles, metadata profiles, tags, and monitoring status
  • Delete Artists 🗑️ - Remove artists from your library with optional file deletion
  • Artist Details 🔍 - Get the full picture on any artist:
    • Overview, disambiguation, type, status, genres, and ratings
    • Album list with release dates, track counts, and download status
    • Artist history with detailed event info
    • Manual discography search with release selection and download

💿 Album & Track Management

  • Album Details - Drill into individual albums to see:
    • Track listing with audio info (codec, channels, bitrate, sample rate, bit depth)
    • Album history
    • Manual album search for grabbing specific releases
  • Track Details 🎼 - View individual track info and history
  • Delete Albums - Remove individual albums from your library

⬇️ Downloads & Queue

  • Downloads Tab - Keep an eye on active downloads and manage your queue
  • Blocklist 🚫 - View and manage blocked releases

📜 History

  • Full History Support - Browse, search, filter, and sort Lidarr event history
  • History Details - Dig into the details of any history event
  • Mark as Failed ❌ - Mark history items as failed

🔎 Indexers

  • Indexer Management - View, add, edit, and delete indexers
  • Indexer Settings ⚙️ - Configure global indexer settings
  • Test Indexers 🧪 - Test individual or all indexers at once

📁 Root Folders

  • Root Folder Management - Add and manage root folders for your music library

🖥️ System

  • System Status - View Lidarr system info and health checks
  • Tasks - View and trigger system tasks
  • Queued Events - Monitor queued system events
  • Logs 📋 - Browse system logs
  • Updates 🆙 - Check for and view available updates

⌨️ CLI Commands

Full Lidarr CLI support for all the things!

managarr lidarr list artists|albums|tracks|indexers|root-folders|tags|quality-profiles|...
managarr lidarr get artist|album|track|...
managarr lidarr add artist|root-folder|tag|...
managarr lidarr edit artist|indexer|indexer-settings|...
managarr lidarr delete artist|album|root-folder|tag|blocklist-item|...
managarr lidarr search artist|album|...
managarr lidarr refresh artist|downloads|...
managarr lidarr trigger-automatic-search artist|album
managarr lidarr manual-search artist|album

Managarr also supports Radarr and Sonarr!

If you're running the full *arr stack, Managarr has you covered - It supports Radar and Sonarr too, all from the same interface!

This is a passion project so I'd love to hear your feedback, feature requests, or any bug reports you find.

17
submitted 6 months ago by to c/commandline@programming.dev
 
 

DotR, a dotfiles manager as dear as a daughter, is now stable!

18
 
 

Haraltd is a Bluetooth daemon that provides a JSON-based RPC over the native OS's Bluetooth stack. It currently only supports Bluetooth Classic, and runs on Windows and MacOS. Installation instructions are in the README.

It was created to reduce the pain points of dealing with the various Bluetooth stacks present in different operating systems, and to present a simpler API to handle Bluetooth (classic) based operations. It is intended for Bluetooth managers and possibly can be used for scripting purposes. See bluetuith for an application that interacts with Haraltd.

The RPC specification is published here.

A table of the daemon's features is posted here, but to summarise:

  • Adapter/device management

  • Automatic/manual profile-based connection

  • Pairing with authentication

  • OBEX profiles (currently only Object Push, but more OBEX profiles will be added later)

  • Notifications for various Bluetooth events

  • JSON-based RPC over a Unix socket

This was tested only with a sum total of 3 devices (2 Android phones and 1 Bluetooth earphones), so any feedback is appreciated, especially from users who can test with other kinds of Bluetooth classic devices.

Note: No AI was used to manage the codebase or generate code.

19
 
 

Hello Lemmy,

With this release, bluetuith now works on MacOS. MacOS specific instructions are here: https://bluetuith-org.github.io/bluetuith/Installation/MacOS.html.

(TL;DR Install and run Haraltd and then run Bluetuith)

Bluetuith is a TUI based bluetooth manager, that aims to be an alternative to most bluetooth managers, and can perform bluetooth based operations like:

  • Connection to and general management of bluetooth devices, with device information like battery percentage, RSSI etc. displayed, if the information is available. More detailed information about a device can be viewed by selecting the 'Info' option in the menu or by clicking the 'i' key.

  • Bluetooth adapter management, with toggleable power, discoverability, pairablilty and scanning modes.

  • Transfer and receive files via the OBEX protocol, with an interactive file picker to choose and select multiple files.

  • Handle both PANU and DUN based networking for each bluetooth device (Linux only)

  • Control media playback on the currently connected device, with a media player popup that displays playback information and controls. (Linux only)

I hope you enjoy this release, and any feedback is appreciated.

20
 
 

So I'm sure we've all spent time writing scripts or figuring out CLIs for that one project we're working on, and then kind of go on to forget what we did. Then, when another project comes along later, you wish you had that script again so you could see how you did that thing you did.

Personally, I used to just check random scripts into a repo as a kind of "archive" of all my scripts. But I wanted a better way to organize and use these things.

For years I've been building and collecting these scripts into a CLI that I call Devtools to make it so that each script is a subcommand.

I've had a lot of my friends and coworkers ask me to open-source it so they could use it and see how some things are done in Bash, what tools I use, etc. So...here's that CLI!


But what I'd honestly like is more...

So what are your useful scripts or CLIs you've built? Or what's that script you wrote years ago that you now swear by? Or what's that one application you use daily that just makes your life infinitely easier! I want to grow this collection and feed the addiction!

21
 
 

DotR is a dotfiles manager written in Rust. It supports templating, a centralised configuration, multi-level variables and secrets management, dependency, and package & profile patterns. It's still in Beta. Feedback is welcome!

22
 
 

Ed is customizable, actually. It can have syntax highlighting, interactive commands, and build/REPL setup. Enter rlwrap.

23
 
 

Introducing: Loki! An all-in-one, batteries-included LLM CLI tool

Loki started out as a fork of the fantastic AIChat CLI, where I just wanted to give it first-class MCP server support. It has since evolved into a massive passion project that's a fully-featured tool with its own identity and extensive capabilities! My goal is to make Loki a true "all-in-one" and "batteries-included" LLM tool.

Check out the release notes for a quick overview of everything Loki can do!

What Makes Loki Different From AIChat?

  • First-class MCP support, with support for both local and remote servers
    • Agents, roles, and sessions can all use different MCP servers and switching between them will shutdown any unnecessary ones and start the applicable ones
    • MCP sampling is coming next
  • Comes with a number of useful agents, functions, roles, and macros that are included out-of-the-box
  • Agents, MCP servers, and tools are all managed by Loki now; no need to pull another repository to create and use tools!
    • No need for any more *.txt files
  • Improved DevX when creating bash-based tools (agents or functions)
    • No need to have argc installed: Loki handles all the compilation for you!
    • Loki has a --build-tools flag that will build your bash tools so you can run them exactly the same way Loki would
    • Built-in Bash prompting utils to make your bash tools even more user-friendly and flexible
  • Built-in vault to securely store secrets so you don't have to store your client API keys in environment variables or plaintext anymore
    • Loki also will inject additional secrets into your agent's tools as environment variables so your agents can also use secrets securely
  • Multi-agent support out-of-the-box: You can now create agents that route requests to other agents and use multiple agents together without them trampling all over each other's binaries
  • Improved documentation for all the things!
  • Simplified directory structure so users can share full Loki directories and configurations without massive amounts of data, or secrets being exposed accidentally

What's Next?

  • MCP sampling support, so that MCP servers can send back queries for the LLM to respond to LLM requests. Essentially, think of it like letting the MCP server and LLM talk to each other to answer your query
  • Give Loki a TUI mode to allow it to operate like claude-code, gemini-cli, codex, and continue. The objective being that Loki can function exactly like all those other CLIs or even delegate to them when the problem demands it. No more needing to install a bunch of different CLIs to switch between!
  • Integrate with LSP-AI so you can use Loki from inside your IDEs! Let Loki perform function calls, utilize agents, roles, RAGs, and all other features of Loki to help you write code.
24
My Newsboat + Lynx browser setup (video.thepolarbear.co.uk)
submitted 8 months ago by to c/commandline@programming.dev
25
 
 

I've been using khal for years now, and I like everything about it except that it's written in Python and breaks every nine months when some dependency pulls an Idiot. Then it can take a while for the dev to notice and push out a fix, and a while longer for it to make it out through AUR (no shade; it's FOSS, and I'm grateful for it. We all have ourpriorities), during which time doing calendar stuff is hard. I'm looking for an alternative.

I'm aware of:

  • calcure, which is also Python, but in addition can't edit events except in the most broad way
  • calcurse, which is compiled (whew!) except that it ignored established standards and invented it's own bespoke DB format. The DB is One Big File, and it's ASCII, so it's not impossible; but neither is it an RFC like ical

I do not want to use venv, although I may end up having to. Unless, of course, one of you fine gentlepersons can suggest some tool I've missed that will fit the bill:

  • Preferrably with a TUI; although if it's just commands that can print a semblance of a traditional calendar & agenda, and has some sort of interface for creating and editing entries, that would work, too. I just don't want to be manually editing ics files. ics is great, but it's a computer format.
  • Stores calendar entries in RFC 5545 (et al), preferrably in a directory, so that it works with the cornucopia of vdir-based caldav syncers.
  • Most importantly, is compiled. Even better if I can statically compile the thing, so that it won't ever¹ break unless I do something specifically to it that breaks it.

I don't think I have any other asks for it; it doesn't need to alert me, or issue remindors, or send notifications, or anything else; I have a mobile app and other programs for that. I don't care what it's written in.

1: For reasonable values of "ever"

view more: next ›