Skip to content

Releases: JasonSteving99/click-clack

0.2.1

Choose a tag to compare

@JasonSteving99 JasonSteving99 released this 11 Mar 06:04

Fixes

  • Update Readme docs to give correct usage instructions.

Features

N/A

0.2.0

Choose a tag to compare

@JasonSteving99 JasonSteving99 released this 11 Mar 01:05

Fixes

N/A

Features

Now you can give MCP Clients like Claude Desktop access to all your click commands by adding a single config to point to a directory containing your click commands!

0.1.4

Choose a tag to compare

@JasonSteving99 JasonSteving99 released this 08 Mar 21:59

Fixes

Treat All Unexpected Click Param Types as Text UI Elems

This ensures that we don't fail a script just because we don't have a special UI element to render for it. This tool is still useful even if it literally only renders text boxes.

Improvements

N/A

0.1.3

Choose a tag to compare

@JasonSteving99 JasonSteving99 released this 02 Mar 23:51

Fixes

Allow commands with duplicate names

Distinguish them in the UI by their path. This comes up since the "name" of a command is just the name of the function decorated with @click.command(). It's not that unusual for these function names to collide since people would typically be invoking these commands via smth more like python -m unique.path.to.my.command.file which doesn't at all involve specifying that name so they wouldn't necessarily have a reason not to name it something arbitrary like def _cmd or def main.

Fix handling of help text generation

This previously didn't work when using required options without a default value set. Now using click's "resilient parsing" to generate the help text without requiring any args.

Improvements

Catch any exceptions that the command throws and send its traceback output to stdout so that it shows up in the UI

This is pretty straightforwardly just an improvement that allows you to see output in the case that something goes wrong and not only when it all goes right.

0.1.2

Choose a tag to compare

@JasonSteving99 JasonSteving99 released this 01 Mar 22:14
c1cbe18

Fixes:

N/A

Improvements:

Support asyncclick Commands

Now you can run click-clack over asyncclick commands.

Opt-in to Streaming Command Output

This is helpful for long-running commands where you'd like to see the command's incremental progress, although in the current implementation based on marimo.redirect_output() the streamed output is formatted as byte strings (e.g. b'some random output\n') which isn't ideal...

0.1.1

Choose a tag to compare

@JasonSteving99 JasonSteving99 released this 01 Mar 03:03

Fixes:

Use click_clack/ Not src/ Package for Compatibility

Should make this tool more broadly usable in more codebases, in more situations. Previously, the fact that this was packaged in the src/ directory meant that pip was for some reason clobbering the src/ dir of any project that tried installing this package (meaning that that project's own src/ dir was broken and couldn't be referenced via from src import foo - which is absolutely wild but apparently how Python works?.... absolutely broken ass language). Now I'm only claiming the click_clack/ dir, which realistically shouldn't be an issue for users.

Improvements:

Support More Option Types

Added support for the following option types:

  • click.File (via a file browser UI element: TODO - support stdout via click's magic "-" file arg support)
  • click.Path
  • click.DateTime
  • click.IntRange
  • click.FloatRange

0.1.0

Choose a tag to compare

@JasonSteving99 JasonSteving99 released this 28 Feb 17:17
a7a1866

Initial Minimal Release!

🎉