Skip to content

Latest commit

 

History

1,190 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dotfiles

These dotfiles support macOS only. Linux, containers, and GitHub Codespaces are unsupported.

Install

curl -fsSL \
  https://github.com/ghraw/SebastienElet/dotfiles/main/install.sh | bash

If Git is unavailable, the installer exits without starting the Command Line Tools installation. Run xcode-select --install, complete the macOS system dialog, then rerun the command above after the installation finishes.

Manual install

cd && \
  git clone --depth 1 https://github.com/SebastienElet/dotfiles.git .dotfiles && \
  cd .dotfiles && \
  make moon && \
  "$HOME/.moon/bin/moon" exec --quiet install

Install the separately maintained optional profile with make optional.

Moon installs the complete minimal profile. With Moon available:

moon exec --quiet install
moon action-graph repository:install

Install the Node development toolchain independently with moon exec repository:pnpm; its dependencies install Homebrew, Volta, and the exact Node version from package.json. The make volta, make node, and make pnpm entry points delegate to Moon.

Checks

With Moon available, run the shared checks and behavior tests:

moon run check
moon run test

Checks include TypeScript, Prettier, Lua, Fish, shell scripts, workflows, CSpell and Rust. Their tools are prerequisites in the Moon graph; Lua lint alone is moon run lua-lint. The full workstation smoke is moon exec tooling:smoke-minimal on a dedicated macOS runner. Code Search and Docker integrations remain explicit tasks with their own prerequisites.

Architecture decisions

Structural choices — installer, shell, editor, container runtime, agent instructions — are recorded as ADRs in docs/adr/, one file per decision, reconstructed from the git history. Only decisions still in force are recorded; superseded ones survive as the "Alternatives écartées" section of whichever decision replaced them.

Read the relevant ADR before changing one of these choices, and add a new ADR when making one.

Repository layout

See docs/ARCHITECTURE.md for the complete project map, deployment flow, and placement rules.

  • home/ mirrors the destination-relative paths of files deployed under $HOME.
  • harness/ contains instructions and capabilities shared across agent harnesses.
  • tooling/ contains maintained local applications and extensionless kebab-case executables.
  • Tool-mandated integration paths and repository entry points remain at the root.

Harness project export

Generate the portable user-harness Markdown snapshot used by ChatGPT Projects, Claude Projects, Gemini, or notebook tools:

arnes export
arnes export --check

Upload every Markdown file from .harness-export/, including 00-MANIFEST.md. The directory is a temporary ignored build artifact: never edit or commit it. The check command performs no writes and fails when local sources, bundles, or the manifest drift, or when an obsolete artifact remains.

The export contains every non-ignored source under harness/, except the generated skills index and operating-system metadata, plus the canonical hook declarations in home/.arnes.yaml. Source categories are defined once in tooling/arnes/src/export/sources.rs; extend that selector and its tests to add a category, then regenerate the snapshot.

About

🔧 My dotfiles

Topics

Resources

Stars

15 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages