logoalt Hacker News

ytjohntoday at 11:51 AM1 replyview on HN

Confirming that Pi can definitely handles this. I've written a harness "factotum" based on pi just for managing my homelab and my radio club's systems. Has absolutely no issue sshing into things remotely, running ansible/helm/kubectl/talosctl commands.

There's a few skills, a and an extension to switch inventory. The extension is only needed because I want to switch between the two organizations. It's pretty slick. One of my use cases was just getting my homelab under control. So one of the first tasks I gave it was to go find everything that's running on these hosts, system services, docker compose, kube pods, etc. Builds an inventory, memory, todos.

Switches the script from "ai helps me launch more experiments to lose track of" to "organized and back under config management".

  .pi/factotum/
  ├── active-profile
  ├── profiles
  │   ├── club
  │   │   ├── config.yaml
  │   │   ├── inventory
  │   │   │   └── hosts.yaml
  │   │   └── todos
  │   │       ├── 22a094a3.md
  │   │       ├── 427ad844.md
  │   │       ├── 4c185be7.md
  │   │       ├── 4d0eea0f.md
  │   │       └── bcf069a4.md
  │   ├── examples
  │   │   ├── config.yaml
  │   │   └── inventory
  │   │       └── hosts.yaml
  │   └── local
  │       ├── config.yaml
  │       ├── inventory
  │       │   └── hosts.yaml
  │       ├── memories
  │       │   ├── axel-services.md
  │       │   ├── fran-mydiffuser.md
  │       │   ├── fran-services.md
  │       │   ├── ruffclus-cluster.md
  │       │   └── ruffclus-paperless-ngx.md
  │       └── todos
  │           ├── 0f7fd63e.md
  │           ├── 75c82ceb.md
  │           ├── 9cb63594.md
  │           ├── af33e08f.md
  │           ├── ba490542.md
  │           ├── c09c144f.md
  │           ├── c5f7f8a8.md
  │           └── d4c4b287.md
  ├── schemas
  │   ├── PROJECT_ARCHITECTURE.md
  │   └── project-architecture.yaml
  ├── task-templates
  │   └── host-audit.yaml
  └── tools
      └── host_audit_runner.sh

Replies

iibtoday at 12:58 PM

How do you use `pi` to ssh? I use `oh-my-pi`, and tried the `/ssh` command, but I couldn't get it to work. Then I saw a suggestion somewhere to just run `!ssh` to place things into the agent's context.

Is there a way to use it like "The current directory is at `ssh server`" and have the agent work from there?