cgcardona / muse public
app.py python
53 lines 2.1 KB
7ba4aa0b Remove all Maestro legacy code; clean mypy across full muse/ package Gabriel Cardona <gabriel@tellurstori.com> 3d ago
1 """Muse CLI — entry point for the ``muse`` console script.
2
3 Core VCS commands::
4
5 init status log commit diff
6 show branch checkout merge reset
7 revert stash cherry-pick tag
8 """
9 from __future__ import annotations
10
11 import typer
12
13 from muse.cli.commands import (
14 branch,
15 cherry_pick,
16 checkout,
17 commit,
18 diff,
19 init,
20 log,
21 merge,
22 reset,
23 revert,
24 show,
25 stash,
26 status,
27 tag,
28 )
29
30 cli = typer.Typer(
31 name="muse",
32 help="Muse — domain-agnostic version control for multidimensional state.",
33 no_args_is_help=True,
34 )
35
36 cli.add_typer(init.app, name="init", help="Initialise a new Muse repository.")
37 cli.add_typer(commit.app, name="commit", help="Record the current working tree as a new version.")
38 cli.add_typer(status.app, name="status", help="Show working-tree drift against HEAD.")
39 cli.add_typer(log.app, name="log", help="Display commit history.")
40 cli.add_typer(diff.app, name="diff", help="Compare working tree against HEAD, or two commits.")
41 cli.add_typer(show.app, name="show", help="Inspect a commit: metadata, diff, files.")
42 cli.add_typer(branch.app, name="branch", help="List, create, or delete branches.")
43 cli.add_typer(checkout.app, name="checkout", help="Switch branches or restore working tree from a commit.")
44 cli.add_typer(merge.app, name="merge", help="Three-way merge a branch into the current branch.")
45 cli.add_typer(reset.app, name="reset", help="Move HEAD to a prior commit.")
46 cli.add_typer(revert.app, name="revert", help="Create a new commit that undoes a prior commit.")
47 cli.add_typer(cherry_pick.app, name="cherry-pick", help="Apply a specific commit's changes on top of HEAD.")
48 cli.add_typer(stash.app, name="stash", help="Shelve and restore uncommitted changes.")
49 cli.add_typer(tag.app, name="tag", help="Attach and query semantic tags on commits.")
50
51
52 if __name__ == "__main__":
53 cli()