Skip to content

canadaluke888/ghostcode

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ghostcode

Ghostcode is a native gstc executable for creating, restoring, annotating, and periodically writing codebase snapshots.

Install Latest Release

Download the latest .deb package from the project releases page, then install it with:

sudo apt install ./ghostcode_<version>_amd64.deb

Verify the installed commands:

gstc --help
ghostcode --help

The ghostcode command is installed as an alias for gstc.

Build From Source

Install build dependencies on Debian or Ubuntu:

sudo apt update
sudo apt install build-essential libncursesw5-dev libpanel-dev dpkg-dev zip

Build the native executable:

make

Run tests:

make test

Install locally:

sudo make install

Build a Debian package:

make deb

The package is written to dist/ghostcode_<version>_amd64.deb, where <version> comes from the VERSION file.

Quick Start

Create the native config file in a project root:

gstc init

Create a config with selected overrides:

gstc init --name demo --respect_gitignore false --exclude_dirs build,dist

Show the config:

gstc config show

Edit the config in the native terminal editor:

gstc config edit

Update config values from the classic CLI:

gstc config edit --chunk_bytes 200000 --zip_output true

Open the native annotation editor:

gstc annotate

Open annotation directly for an included file:

gstc annotate src/app.c

Create a snapshot:

gstc

Restore a snapshot from its export ID directory:

gstc restore ghostcode_export/<snapshot_id> -o restored_project

Check autosnapshot state:

gstc auto status

Config File

Ghostcode now uses .gc. Legacy .gc.json and .ghostcode.json files are not accepted by the native CLI.

Default .gc order:

name=ghostcode
file_type=txt
include_instructions=false
follow_symlinks=false
zip_output=false
respect_gitignore=true
chunk_bytes=180000
max_file_bytes=300000
encoding=utf-8
include_extensions=
exclude_dirs=
exclude_files=
exclude_globs=
exclude_extensions=
autosnapshot_interval_seconds=900
autosnapshot_out_dir=
annotations_begin
annotations_end

List values are comma-separated and support backslash escapes for commas, backslashes, newlines, and equals signs. Annotation records are stored between annotations_begin and annotations_end.

About

Tool for creating codebase snapshots

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

No contributors