julia-vibe-coding

Julia × AI agent vibe coding workflow skill. Uses julia-mcp (persistent Julia session) to write code in Literate.jl format for reproducible research notebooks. Avoids TTFX overhead while keeping results as versioned .jl files. Use this skill when the user mentions: Julia, julia-mcp, .jl, REPL, julia_eval, Literate.jl, Pluto, DifferentialEquations, ModelingToolkit, Plots, Makie, DataFrames, Pkg, using, include, or any Julia coding, simulation, data analysis, or package dev task. Also trigger when the user is working on any Julia project in a terminal-first / agentic workflow.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "julia-vibe-coding" with this command: npx skills add hanafsky/julia-skills/hanafsky-julia-skills-julia-vibe-coding

Julia Vibe Coding Skill

Workflow for Julia × claude-code (julia-mcp): avoid TTFX, keep code in Literate.jl format.

How julia-mcp works

Keeps a julia -i process alive per project directory. Code is sent via stdin/stdout pipe. Variables, loaded packages, and function definitions persist across julia_eval calls.

Available MCP tools:

  • julia_eval(code, env_path?, timeout?) — execute code (main tool)
  • julia_restart(env_path?) — force session reset (last resort only)
  • julia_list_sessions() — list active sessions

Rules (always follow)

1. Write to file first, then include

# ❌ Inline execution (except 1-liners)
julia_eval("result = some_complex_calculation()")

# ✅ Write to scripts/, then include
julia_eval('include("scripts/explore_topic.jl")', env_path="/abs/path/to/project")

Exception: single-line checks like julia_eval("versioninfo()") are OK inline.

2. Write all .jl files in Literate.jl format

See references/literate_format.md for full syntax. Key rules:

  • # prefix → Markdown text
  • # # Title → H1, # ## Section → H2
  • No prefix → Julia code block
  • expr #hide → executed but hidden in output

3. Always specify env_path explicitly

julia_eval(code, env_path="/abs/path/to/project")

Omitting env_path creates a throwaway session without the project environment.

4. Trust Revise.jl

julia-mcp auto-loads using Revise on startup. After editing src/, do not call julia_restart — Revise handles it.

5. Never touch Pkg (humans only)

# ❌ Absolutely forbidden
julia_eval('import Pkg; Pkg.add("Plots")')

If a package is missing, stop and notify the human:

⚠️ Package not installed. Please run in Julia REPL:
] add SomePackage
Resume when done.

File layout

project/
├── Project.toml
├── Manifest.toml
├── src/          # package code (watched by Revise)
├── scripts/      # exploration scripts (Literate.jl format)
├── notebooks/    # Literate.jl output (.md)
└── test/
  • Exploration code → scripts/ (Literate format)
  • Reusable logic → src/
  • Generated notes → notebooks/

Typical workflow

  1. Create scripts/explore_xxx.jl in Literate format
  2. julia_eval('include("scripts/explore_xxx.jl")', env_path=...)
  3. Edit the file, re-include
  4. Extract stable logic to src/
  5. Export note: Literate.markdown("scripts/explore_xxx.jl", "notebooks/")
  6. For PDF/HTML/Word: use Quarto flavor and render (see references/quarto_workflow.md)
    Literate.markdown("scripts/explore_xxx.jl", "notebooks/"; flavor=Literate.QuartoFlavor())
    
    quarto render notebooks/explore_xxx.qmd --to typst-pdf
    

Common mistakes

SituationWrongRight
Want to try codeInline julia_eval("...")Write to scripts/, include
Got an errorCall julia_restartRead the error, fix the code
Package missingPkg.add in julia_evalNotify human with ] add PkgName
Edited src/Call julia_restartLet Revise handle it

References

  • references/literate_format.md — Literate.jl syntax and examples
  • references/julia_mcp_setup.md — julia-mcp setup instructions
  • references/quarto_workflow.md — Literate.jl → Quarto → PDF/HTML/Word pipeline

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

julia-performance

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

Agent Browser Skipped

A fast Rust-based headless browser automation CLI with Node.js fallback that enables AI agents to navigate, click, type, and snapshot pages via structured co...

Registry SourceRecently Updated
Coding

Agent Dev Workflow

Orchestrate coding agents (Claude Code, Codex, etc.) to implement coding tasks through a structured workflow. Use when the user gives a coding requirement, f...

Registry SourceRecently Updated
Coding

macos-wechat-send

Automates sending messages on WeChat Mac by controlling the app via AppleScript and clipboard to reliably deliver text to specified contacts.

Registry SourceRecently Updated