SlopScore
00 crowd

termstation (github.com/kcosr/termstation)

A web-based terminal session manager.
JavaScript · ★ 63 · 8 forks · MIT · paperwork by the Cap'mmostly ai (inferred)light human (inferred)works-on-my-machine (inferred)other
listed 2 hours ago by kcosr · last checked 2 hours ago · demo
The owner didn't write this. This repo never submitted itself. The Cap'm found it on a truffle trawl and wrote its paperwork from what GitHub already shows. Picked by hand by the Cap'm on 2026-09-11: a web-based terminal session manager with layouts, scratch pads and an API, whose README warns "100% of the code was generated by Claude and Codex.". 63 stars; MIT license. The owner did not submit this. Votes count; awards don't until the owner claims it.

I'm not calling your project slop! Geeze, it's a joke... Do you own this repo?

Log in with GitHub as kcosr. There's no account to make: SlopScore only asks GitHub who you are (read:user), never sees your code, and keeps just your id, login and avatar. Then you can:

  • Keep it, on your terms. Commit your own slopscore.md (spec) and press Refresh. Your paperwork replaces the Cap'm's, and you can submit it for Slop of the Day.
  • Take it down. One click on Remove. It stays gone; the trawl never brings it back.

Log in with GitHub

Can't log in as the owner? Request a takedown. No login needed, and a trawled listing comes down right away.

GitHub says
A web-based terminal session manager.
website
https://termstation.dev
created
2025-11-30 · pushed 5 months ago · 111 commits · 4 contributors
languages
JavaScript 89%CSS 5%Shell 3%HTML 3%Python 0%
paperwork
contributinglicensereadme 57% health
dependencies
no dependency graph (no manifest, or disabled) · OSV.dev, checked 2 hours ago

Disclosures, inferred by the Cap'm

slopbucket
vibe-coded
category
other
ai_generated
mostly
human_touch
light
status
works-on-my-machine
language (detected)
csshtmljavascriptpythonshell
license (detected)
mit

The Cap'm's log

The Cap'm wrote this paperwork, not the owner. This repo never submitted itself to SlopScore. The Cap'm picked it by hand: a web-based terminal session manager with layouts, scratch pads and an API, whose README warns "100% of the code was generated by Claude and Codex.". It carries the MIT license. The disclosures above are his best guess from what GitHub shows.

Is this yours? Commit a real slopscore.md and press Refresh to replace this, or remove the listing in one click. There's no account to make: you log in with GitHub.

README (read the rest on GitHub)

TermStation

TermStation interface

Pre-Alpha Warning

This is a pre-alpha release. Use at your own risk! Review this README and the following documents before proceeding with installation.

Overview

TermStation is, at its core, a web-based terminal session manager that provides an API. It was created primarily to allow the developer access to his terminal sessions on multiple machines and to organize them in his preferred layout. Used regularly to manage agent CLIs, it does not have any knowledge of AI tools themselves. Integrations are built around templates where CLI commands and arguments are configured. It includes some features that extend further than basic terminal session management, including but not limited to:

  • Template driven command definitions to drive GUI session creation forms
  • Session and workspace-specific scratch pads
  • Configurable code forges
  • Launching commands in containers (e.g. agent CLIs)
  • Generic PTY input API, used to provide agent-to-agent communication driven by prompting
  • API for adding links to sessions and displaying them in the UI
  • File generation with macros and includes, often used for .md file generation
  • Reverse tunnel HTTP proxy for accessing web servers running in containers
  • Multi-user support with RBAC and session sharing

Requirements

Backend

  • Operating System: Ubuntu 22.04+ or Rocky Linux 10+ (other Linux distributions may work but are untested)
  • Node.js: Version 22 or later
  • Container Runtime: Docker (Ubuntu) or Podman (Rocky)

Frontend

  • Web: Any modern browser
  • Desktop: Windows, macOS, Linux (Electron)
  • Mobile: Android (Capacitor)

Initial Installation

INSTALL.md provides instructions for running scripts to install on Rocky 10 and Ubuntu 24.04. The installation includes an opinionated configuration that is probably not a good fit for you. It is mostly configurable, primarily in templates.json, but you will need to ask Claude, Codex or the developer for help as documentation is not ready. The initial installation provides a basic demonstration of launching Claude, Codex and Cursor in a container, with wiring and prompting (AGENTS.md) in place to support agent-to-agent messaging.

Configuration

Sample templates, Dockerfile, and markdown files installed by the installer are for demonstration purposes only. These are meant to be owned and maintained by you.

Configuration files are stored in ~/.termstation/config/ (or a custom location):

File Description
config.json Main configuration (ports, bind address, forges)
templates.json Session templates
links.json Quick links for the UI

User and group files are copied to the data directory (~/.termstation/data/) on first run and may be modified by TermStation at runtime:

File Description
users.json User accounts
groups.json User groups

Key Settings in config.json

Key Default Description
listeners.http.address 127.0.0.1 HTTP bind address. Use 0.0.0.0 to expose externally.
listeners.http.port 6624 Backend HTTP port
sessions.base_url http://localhost:6625 Frontend URL
containers.runtime podman Container runtime (podman or docker)

Enable code forges in the forges section. GitHub is enabled by default.

Security

Exposing the frontend and backend services publicly is not recommended. While authentication is supported, it has not been hardened for exposure to untrusted networks. If you're running on a VPS, bind the service to localhost and access it through an SSH tunnel:

# default ports: backend=6624, frontend=6625
ssh -L 6624:localhost:6624 -L 6625:localhost:6625 <your-vps-ip>

Known Issues

These are issues you're likely to encounter that may impact usability:

Terminal Display

The terminal display can be janky and sometimes requires refreshing the app/page or clearing the terminal to reset, especially when switching between devices with different screen sizes (e.g., desktop to mobile).

Container Cleanup

Containers are sometimes not shut down or cleaned up properly and may need to be pruned periodically:

# Podman
podman container prune
podman image prune

# Docker
docker container prune
docker image prune

Container Startup Errors

If a container doesn't start, error messages may not be visible in the UI. Copy the container command from the backend log or session history and run it manually in a terminal to see the actual error message.

Keyboard Shortcuts

Opinionated keyboard shortcuts are built-in, many of which conflict with browser defaults. These were designed for the desktop app and will be made configurable in a future release.

Session Data Accumulation

Session data is persisted and will accumulate over time. Until automatic cleanup is implemented, you'll need to manually delete old session data.

Session data is stored in ~/.termstation/data/sessions/ (or your configured data_dir). Each session creates a directory containing:

sessions/
└── <session-id>/
    ├── <session-id>.json      # Session metadata
    ├── <session-id>.log       # Raw PTY output log
    └── workspace/             # Session workspace (cloned repos, generated files, etc.)

Backend Shutdown

The backend may not terminate cleanly if stopped while containers are running. If the process hangs on shutdown, you may need to force kill it with kill -9.

Docker Support

Docker container support (vs Podman) has received very little testing. The primary development environment uses Podman on Rocky Linux. If you encounter Docker-specific issues, please report them.

Local Terminals

Local terminals can be spawned directly from the Electron desktop app. Sorting of these sessions with backend sessions doesn't work propertly, and history is not preserved across reloads.

Project Structure

termstation/
├── backend/      # Node.js API server
├── frontend/     # Web UI (vanilla JS/HTML/CSS)
├── desktop/      # Electron app
├── mobile/       # Capacitor app (Android)
├── shared/       # Shared utilities
├── scripts/      # Build and utility scripts
└── docs/         # Documentation

Release Status

TermStation was not built with distribution in mind, so there is much work remaining to get it ready for general use. At this time, it's being made available so that those who are interested or following can try it out. Issues and PRs are welcome! Feel free to use Discussions to ask questions, or reach out to the developer @kcosr on X. Please see CONTRIBUTING.md for more information.

TermStation started as a vibe-coding project and evolved into a vibe-engineering project. Much cleanup work remains, including a planned rewrite from Javascript to Typescript. The developer's background is in C++ and he did not know any better. That said, be aware that 100% of the code was generated by Claude and Codex.

Scan report · 2026-09-11
  • Prohibited terms or links
  • Repository eligibility
  • slopscore.md paperwork
  • Content policy
  • Risk review

0 comments

log in to comment.

report this listinglog in to report