Install
$ agentstack add skill-krastanov-juliallmagentskills-julia-comonicon ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Julia Comonicon
Use Comonicon to turn Julia functions/modules into CLI commands.
Quick Start: Single Command Script
Use @main on a function for one-command CLIs:
using Comonicon
"""
Example CLI.
# Arguments
- `input`: input value.
# Options
- `-o, --output `: output path.
# Flags
- `-f, --force`: overwrite existing files.
"""
@main function mycmd(input; output="out.txt", force::Bool=false)
println("input=", input, " output=", output, " force=", force)
end
Run with:
julia myscript.jl -h
If creating an executable script, add a Julia shebang and chmod +x.
Build a Multi-Command CLI Package
Use @cast to register leaf commands and modules, then @main for the entry:
module Demo
using Comonicon
@cast greet(name; loud::Bool=false) = loud ? println(uppercase(name)) : println(name)
@cast version() = println("Demo CLI")
module Admin
using Comonicon
@cast prune(days::Int=30) = println("pruning older than ", days, " days")
end
@cast Admin
@main
end # module
Prefer package-style CLIs for serious use. This gives install/build workflows and better startup optimization options.
Use the Built-In Entry/Install Functions
After @main, Comonicon generates module helpers, including:
command_mainfor CLI entry.comonicon_installandcomonicon_install_pathfor install flows.julia_mainfor standalone application builds.CASTED_COMMANDSregistry for generated command AST/metadata.
Use a deps/build.jl install entry like:
using Demo
Demo.comonicon_install()
Follow Comonicon Naming and Help Conventions
- Map positional arguments to CLI arguments.
- Map keyword arguments to options/flags.
- Use
Bool=falsekwargs for flags. - Expect
_in kwarg names to become-in CLI long options. - Use docstring sections
# Arguments,# Options, and# Flagsfor rich help. - Remember
-h/--helpand--versionare always generated.
For exact syntax patterns, open references/conventions.md.
Configure Build and Advanced Behavior
Use Comonicon.toml (or JuliaComonicon.toml) in project root for behavior like plugin enablement and system-image/application builds.
For concrete templates and installation/build flow, open references/project-workflow.md.
Related Skills
julia-package-dev- creating Julia packages and managing package or Pkg-app workflowsjulia-tests- running package tests while developing CLI code
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: Krastanov
- Source: Krastanov/JuliaLLMAgentSkills
- License: Unlicense
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.