'Generic Commit'
All checks were successful
Build-Test-Publish / build (push) Successful in 51s

This commit is contained in:
Your Name
2025-06-16 22:39:05 +12:00
parent b33be13764
commit 5275f02ee3
11 changed files with 74 additions and 70 deletions

View File

@ -4,13 +4,13 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
## Project Overview
This repository contains Dropshell Tools - a collection of utilities that support dropshell development. The main tool is `dropshell-tool`, a C++ command-line application that manages tool installation, updates, and publishing for the dropshell ecosystem.
This repository contains Dropshell Tools - a collection of utilities that support dropshell development. The main tool is `getpkg`, a C++ command-line application that manages tool installation, updates, and publishing for the dropshell ecosystem.
## Architecture
### Core Components
- **dropshell-tool**: Main C++ application (`dropshell-tool/src/`)
- **getpkg**: Main C++ application (`getpkg/src/`)
- `main.cpp`: CLI interface and command routing
- `ArchiveManager`: Handles .tgz archive creation/extraction
- `BashrcEditor`: Manages ~/.bashrc_dropshell_tool script modifications
@ -34,14 +34,14 @@ This repository contains Dropshell Tools - a collection of utilities that suppor
# Build all tools (includes install from getbin.xyz)
./buildtestpublish_all.sh
# Build specific tool (dropshell-tool)
cd dropshell-tool && ./build.sh
# Build specific tool (getpkg)
cd getpkg && ./build.sh
# Test specific tool
cd dropshell-tool && ./test.sh
cd getpkg && ./test.sh
# Publish specific tool (requires SOS_WRITE_TOKEN)
cd dropshell-tool && ./publish.sh
cd getpkg && ./publish.sh
```
### Development Workflow
@ -58,13 +58,13 @@ export CMAKE_BUILD_TYPE="Release"
## Tool Functionality
dropshell-tool manages a tool ecosystem by:
- Installing tools to `~/.local/bin/dropshell-tool/<tool_name>/`
getpkg manages a tool ecosystem by:
- Installing tools to `~/.local/bin/getpkg/<tool_name>/`
- Managing bash completions and aliases via `~/.bashrc_dropshell_tool`
- Storing tool metadata in `~/.config/dropshell-tool/`
- Storing tool metadata in `~/.config/getpkg/`
- Publishing/downloading tools via getbin.xyz object storage
Each tool includes a `dropshell-tool-config.json` with aliases and setup scripts.
Each tool includes a `getpkg-config.json` with aliases and setup scripts.
## Publishing Requirements