[v1.4.0] Introducing StudioCLI - Terminal & Built-In Git + Package Manager

I agree that the package manager needs some work, but I don’t currently know of a way to grab files off GitHub. About the package.lua thing, I’ll start adding more functionality to the package manager in v1.3.0.

1 Like

Here’s a link to get you started.

GitHub has a nice API for working with repositories. You’ll notice in the data it sends back there’s download_url key which provides a url to the raw content of a file. You can write a recursive function to generate these files and luckily Roblox allows up to 500 HTTP requests per minute.

If I have the time I might make a pull request to StudioCLI implementing this feature.

1 Like

Version 1.2.0

Second major update this week! v1.2.0 is released along with new features such as profiles, configuration files, scripts, and a few bug fixes as well.

Please update the plugin to get the latest features.

You can read more about this release here.

Fixed a minor bug where if no config.cli or profile.cli existed the plugin would not start.

Version bumped to: v1.2.1

Version 1.3.0

GIT SUPPORT!!!

This update adds a whole suite of git tools, such as git add/reset, git commit, git push (for remote repos), and much, much more!

You are also now able to clone any repository by using git clone USERNAME/REPO_NAME!

Please update the plugin to get the latest features.

1 Like

Interesting plug-in, I might use it later, does it automatically unpack files such as rbxm or rbxlx?

1 Like

No, afaik binary and XML files don’t have a general way to decode and it’d be ridiculously difficult to create a binary decoder.

Forgot to send the full release notes for v1.3.0, here is the link.

Vote For The Next Main Feature (max 3)
  • Scratch-To-Lua
  • $EXEPATH that works like how $PATH & bin folders work on UNIX systems - for storing runnable executables
  • “preview {id}” to preview images from the command line
  • NOT SURE: rojo from the command line
  • NOT SURE: More language interpreters (rn there’s only lua because of loadstring)
  • A VSCode-like interface that can be prompted with “code {path}”
  • Extra miscellaneous functions, like an HTML hr for the cli

0 voters

If an idea you have isn’t on the list, you can just reply to this message with your idea.

Sneak peek at v1.4.0’s VSCode interface feature…

Feedback before it’s released?

1 Like

Version 1.4.0

Cloud Registry + more

You have voted and the results are here! I have added a (slightly buggy) VSCode-style sidebar that can be prompted with code and support for an $EXEPATH variable that holds the paths to areas in the game where ModuleScripts that have locally-developed CLI commands can be run. I also added the preview command because it is a bit useful.

Another important feature is the Cloud Registry! You can now add your own name-id pairs to the cloud registry by running rbx cloud to set up your identity (run only once, then you can infinitely publish) and then rbx publish <nameOfPackage> <moduleAssetId>.

You can view the full release notes here:

As always, update the plugin to get the latest features.

1 Like

Tutorial On How To Take Advantage Of $EXEPATH

$EXEPATH is a CLI variable that holds a value similar to your computer’s PATH value, like this: ServerStorage/bin.

If you create a folder in ServerStorage called bin, make a new ModuleScript in there and paste in this boilerplate code.

return function(self, regular, args, flags)
    -- develop local CLI command here
end

You can now develop your very own CLI command here. Have fun, and if you ever make an awesome command, make a PR to the repository’s Commands.lua file with your command!

1 Like

Instead of your own registry, consider adding wally support

  1. Wally is written in Rust, a language I am not too familiar with.
  2. From what I can tell, Wally pulls packages off GitHub (I may be wrong), which you can already do with StudioCLI.

I’m not exactly sure what this would accomplish, can you please elaborate?

Wally has a public registry - GitHub - UpliftGames/wally-index: Production package index for Wally
you can pull packages off there etc

It’s just an eaisier way of getting packages, doing wally install Roblox/Roact
or wally upgrade or wally install Roblox/Roact@1.0.0

1 Like

Maybe we should be able to add multiple folders and maybe the vscode window could even browse through workspace? And, will we be able to change the CLI font and customize it? I’d like to change the accent-color and set the font to Code.

I honestly don’t remember if you can do this customization already but I’ll add it in the coming update if not. I don’t believe the font is changeable though.

Why are you not using a monospace font? :frowning_face:

To be honest, the current font works fine and I’ll be adding font customization in the next update.

You can always change the font to your liking.