Automic VaultAutomic Vault

brew

Install so with Homebrew, apk, MacPorts, Nix, scoop

Terminal interface for StackOverflow. Version 0.4.10 via Homebrew; verified from local package data. Also installable with nix: nix profile install nixpkgs#so.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install so

local Homebrew formula metadata

MacPortsverified · 94%
sudo port install so

MacPorts ports tree · devel/so/Portfile · source: api.github.com

Linux

Alpine Linux apkverified · 92%
sudo apk add so

Alpine Linux edge package indexes · so · source: dl-cdn.alpinelinux.org

Nixverified · 92%
nix profile install nixpkgs#so

nixpkgs package indexes · pkgs/by-name/so/so/package.nix · source: api.github.com

Windows

Scoopverified · 92%
scoop install extras/so

Scoop official bucket manifest trees · bucket/so.json · source: api.github.com

overview

Package summary

Terminal interface for StackOverflow

Commands and aliases

  • so

history

Project history and usage

so is a Rust terminal interface for Stack Overflow and the broader Stack Exchange network. It packages the familiar developer reflex of searching Stack Overflow into a terminal UI, with multi-site search, configurable search engines, and install paths across common package managers.

Project history

The git history shows an initial commit on May 30, 2020, followed by rapid 0.1 through 0.4 releases in June and July 2020. The changelog calls 0.3.5 the initial passable release and 0.4.0 the point where packaging, keybindings, and the changelog itself were formalized.

The README frames the program as more than a Stack Overflow-only client: it can search any number of Stack Exchange sites, and it distinguishes itself from similar terminal helpers by supporting simultaneous multi-site searches.

Adoption history

Official installation docs list Arch AUR, FreeBSD ports, NetBSD pkgsrc, Homebrew, MacPorts, Scoop, crates.io, and release binaries. The changelog records Homebrew tap support in 0.4.0, a Homebrew core formula in 0.4.1, Windows/Scoop in 0.4.3, NetBSD in 0.4.5, and MacPorts in 0.4.10.

How it is used

The documented workflow is direct shell search: run so followed by a natural-language query, optionally choose Stack Exchange sites with --site/-s, and choose search backends such as StackExchange or Google. The configuration file stores defaults such as limit, lucky mode, sites, search_engine, copy_cmd, and api_key.

Why package nerds care

Package nerds care about so because it sits at the intersection of terminal UI culture, Rust CLI distribution, and developer knowledge retrieval. It is also a compact example of a personal CLI growing into multi-platform packaging across Unix, Windows, BSD, and Rust's cargo ecosystem.

Timeline

  • 2020: Initial git commit.
  • 2020: v0.1.0 first tagged release.
  • 2020: v0.4.0 added Arch and Homebrew tap installation options.
  • 2020: v0.4.1 added Homebrew core formula support.
  • 2021: v0.4.5 added NetBSD installation documentation.
  • 2024: v0.4.10 fixed Cloudflare blocking issues and added MacPorts installation documentation.

Related projects

  • The README explicitly compares so with how2 and howdoi, while positioning so around Stack Exchange network search rather than a single source.

security posture

Risk level: green

narrow executable package without higher-risk signals.

Risk classifier

green risk · low confidence · appliance

Why

  • narrow executable package without higher-risk signals

Signals

  • metadata:no-higher-risk-signals

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 10 platform targets.
  • Build metadata lists 2 build dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

local files

Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.

Configuration files

Config paths the tool may read or write during local use.

Linux
~/.config/so/config.yml
macOS
~/Library/Preferences/io.Sam-Tay.so/config.yml
Windows
%APPDATA%\Sam Tay\so\config.yml

Credential files

Credential-bearing paths to review before unattended agent runs.

Linux
~/.config/so/config.yml
macOS
~/Library/Preferences/io.Sam-Tay.so/config.yml
Windows
%APPDATA%\Sam Tay\so\config.yml

executables

Installed executables

CommandKindExposureNote
socliglobal executable

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-07-25
manager version0.4.10
manager updated
local dataok
upstreamcurrent
latest detectedv0.4.10

https://github.com/samtay/so

  • infoNo package-manager update timestamp was available.low confidence

install metadata

Package metadata

Package keybrew:so
Version0.4.10
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/so
Homepagehttps://github.com/samtay/so
Repositoryhttps://github.com/samtay/so
Upstream docshttps://github.com/samtay/so#readme
LicenseMIT
Source archivehttps://github.com/samtay/so/archive/refs/tags/v0.4.10.tar.gz
Build dependenciespkgconf, rust
Bottleavailable (on arm64_linux, arm64_monterey, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, monterey, sonoma, ventura, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Nameso
Version Scheme0
Revision0
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • stable

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Nix95%

so

nix profile install nixpkgs#so
  • normalized package name match
  • Matched by: So
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/so/so/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
apk95%

so 0.4.10-r0

Terminal interface for Stackoverflow

https://github.com/samtay/so

sudo apk add so
  • License: MIT
  • Architecture: x86_64
  • Source Package: so
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: So
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: so from https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz
MacPorts95%

so

sudo port install so
  • normalized package name match
  • Matched by: So
MacPorts ports tree · api.github.com · MacPorts ports tree: devel/so/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
Scoop95%

extras/so

scoop install extras/so
  • normalized package name match
  • Matched by: So
Scoop official bucket manifest trees · api.github.com · Scoop official bucket manifest trees: bucket/so.json from https://api.github.com/repos/ScoopInstaller/Extras/git/trees/master?recursive=1

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Combined YAML source

View the package source record on GitHub.

combined/so.yml

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated configuration and credential file locations
  • curated package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment