This commit is contained in:
20
CLAUDE.md
20
CLAUDE.md
@ -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
|
||||
|
||||
|
Reference in New Issue
Block a user