Advanced
Configuration file
The Shigoto Sensor can be configured through a config.json file, located at ~/Library/Application Support/Shigoto/config.json. You can combine it with MDM deployment to preconfigure the sensor for every user.
Some of these changes can also be done directly from the admin panel. This is the safest way to apply these settings for every user of a specified account. This is mostly relevant for device type filters, auto-update and anonymity mode. You can also configure all these options manually using mdm or AD policies.
Editing this file incorrectly can break the application.
Available configuration options
| Option | Type | Default | Description |
|---|---|---|---|
anonymous | boolean | false | Run the sensor in anonymous mode by default. In anonymous mode, no personal data is sent to Shigoto and all data is anonymized. |
anonymousMode | string | — | How anonymity is handled. One of full, pseudo, or denied (see below). |
enabled | boolean | true | Whether the sensor is enabled. If false, the sensor sends no data to Shigoto. |
language | string | system language | Language used by the sensor. One of de-DE or en-US. |
autoUpdateDisabled | boolean | false | Disable automatic updates. If true, the sensor will not check for, download, or install updates. |
windowFullyHidden | string | disabled | Hide the sensor interface entirely — no window, no tray icon. One of disabled, anonymous, everyone or debug. |
The anonymousMode option accepts the following values:
full— no personal data is sent; the user is fully anonymous.pseudo— personal data is sent to Shigoto but is never displayed to other users.denied— the user is not allowed to use Shigoto anonymously.
The windowFullyHidden option accepts the following values:
disabled— the window opens as usual and the tray icon is shown.anonymous— sensors without a user login stay invisible; a signed-in user keeps window and tray icon.everyone— every sensor stays invisible, whether a user is signed in or not.debug— likedisabled, but only ever set by hand on a single machine. See Debugging a hidden sensor.
Location detection and reporting are unaffected — a hidden sensor keeps running. Note that a hidden sensor cannot be opened by its user, so nobody can sign in from it or read its status.
Debugging a hidden sensor
Setting windowFullyHidden in the admin panel applies to every sensor of the account. That leaves
you without a way to look at one specific machine — the window that would show its status and logs
is exactly what the option removes.
The value debug is the way back in. It behaves like disabled, so window and tray icon return,
but unlike the other values it cannot be set from the server, and the account setting cannot
overwrite it. Add it by hand to that machine's config.json:
{
"windowFullyHidden": "debug"
}
The sensor picks the change up while running — no restart needed — and keeps the interface for as
long as the value is there. Every subsequent config update from the server is applied as usual,
except for windowFullyHidden, which stays on debug.
When you are done, delete the windowFullyHidden line from config.json. The sensor drops the lock
and, with the next status report, writes the account's setting back into the file — so a machine you
forget to restart does not stay visible.
debug works in one direction only. It can reveal a hidden sensor, but it cannot hide a sensor whose
account does not hide it, and it cannot be rolled out from the admin panel — a debug sent by the
server is ignored by the sensor.
Example
{
"anonymous": false,
"anonymousMode": "full",
"enabled": true,
"language": "en-US",
"autoUpdateDisabled": false,
"windowFullyHidden": "disabled"
}