Tips and Tricks

Some helpful tips for daily use when using Bosco to run stuff.

Whats Running?

To see everything that is currently running, use the ps command:

bosco ps

Repository Regex

Almost all commands allow you to specify any part of the repository name as a filter. For example, if you have the following repositories:


You can target them individually like follows:

bosco run -r mongodb

This will start just infra-mongodb. Whatever you provide to the -r parameter is converted to a regexp that is applied to the service name.


In the bosco-service.json you can provide 'tags' that allow you to logically group pieces of your projects together.

For example, see the bosco-service.json file for a core project that is the backend of one of our largest pages:

    "service": {
        "name": "app-resource"
    "tags": ["upload", "summary", "author"],
        "command":"node_modules/.bin/gulp build",
        "watch": {
            "ready":"Finished 'default'"
    "assets": {
        "basePath": "/src/public",
        "js": {
            "bottom": [
            "bottom-v2": [
        "css": {
            "main": [
            "main-v2": [
        "img": {

The tags defined within this project are:

"tags": ["upload", "summary", "author"]

This now gives you the ability to start this project with the following commands:

bosco run -t summary
bosco run -t upload

Watching Projects

By default, bosco does not watch projects for changes. The reason for this is performance - it often starts a large number of projects, and we found that watching all of them by default would slow people down too much.

So, to watch a project, simply provide the additional -w parameter (which is a regexp in the same way that the -r parameter is):

bosco run -t summary -w app-resource

This will run all the projects with the summary tag, and put the app-resource project into watch mode - e.g. this is the project that you will actually be making changes to. This change is then reflected in bosco ps: