Troubleshooting
Troubleshooting guide for the Mycroft Skills Manager.

mycroft-msm: command not found

Mycroft provides helper commands for common utilities like MSM. On most systems MSM should be accessible using mycroft-msm. If this command is not found on your system then it has most likely not been added to your $PATH environment variable.
On Linux, when you type a command into the terminal it uses the $PATH environment variable to know where on your system to look for executable files. If you are unfamiliar with this environment variable it's a good one to learn about for new Linux users.

Updating the $PATH variable

The mycroft-msm script, along with all of Mycroft's executables, are contained in the mycroft-core/bin directory. If you installed Mycroft in your $HOME directory, it will be located at: /home/username/mycroft-core/bin.
To permanently add this to our $PATH we will add a line to our .bashrc file that is executed each time we initialize an interactive shell, for example by launching the terminal application.
1
echo 'export PATH="$PATH:/home/username/mycroft-core/bin"' >> ~/.bashrc
2
source ~/.bashrc
Copied!

Other options:

If you do not wish to update your $PATH there are two other methods you can use.
    1.
    Use the full path of the helper command:
    1
    /home/user/mycroft-core/bin/mycroft-msm
    Copied!
    2.
    Activate Mycroft's virtual environment and execute msm directly:
    1
    cd /home/user/mycroft-core
    2
    source .venv/bin/activate
    3
    msm install dice
    Copied!

Git authentication failed

1
ERROR - Error running update_skill on skill-radio-rne: GitException(Git command failed: GitCommandError(['git', 'fetch'], 128, b"remote: Invalid username or password.nfatal: Authentication failed for 'https://github.com/user/my-skill/'", b''))
Copied!
This error usually means that the GitHub repository for the Skill no longer exists, or has moved. Remove the Skill using msm remove [Skill Name] and then install a new Skill.

Uncommitted changes

1
ERROR - Error running update_skill on TranslateSkill: SkillModified(Uncommitted changes:
2
M requirements.sh
3
)
Copied!
This error usually means that there is a difference between the Skill on the Device and the Skill's GitHub repo.
If Mycroft detects that something has change in your Skill, it will stop updating to prevent loss of any work you are doing in that directory. If you are no longer making changes you can checkout the default branch of the Skill, or git stash any changes you've made to get it back to a clean state.
If you continue to get this error you can also delete the Skill and reinstall it.

Git command error - not something we can merge

1
ERROR - Error running update_skill on skill-malibu-stacy: GitException(Git command failed: GitCommandError(['git', 'merge', '--ff-only', 'origin/HEAD'], 1, b'merge: origin/HEAD - not something we can merge', b''))
Copied!
This error usually means that there is no remote url defined for the Git repository (ie. named origin - which is the default name of a remote url). This can happen during Skill development when git init is run without defining a remote url. To resolve this error, add a remote url using the command git remote add origin https://github.com/yourGitHubUsername/yourrepo.git.

Git command error - failed to update repo

1
WARNING - Failed to update repo: GitException(Git command failed: GitCommandError(['git', 'config', 'remote.origin.url', 'https://github.com/MycroftAI/mycroft-skills'], 255, b'error: could not lock config file .git/config: Permission denied', b''))
Copied!
This error usually means that the filesystem permissions of the Skill are incorrect. Manually check, and if necessary, resolve them.
1
(mycroft-core) [email protected]:~/skills/reginaneon-av-music.reginaneon $ ls -las
2
total 48
3
4 drwxr-xr-x 6 pi pi 4096 Jul 12 13:11 .
4
4 drwxrwxrwx 37 mycroft mycroft 4096 Jul 12 13:10 ..
5
4 drwxr-xr-x 4 pi pi 4096 Jul 12 13:10 dialog
6
4 drwxr-xr-x 8 pi pi 4096 Jul 12 13:10 .git
7
4 -rw-r--r-- 1 pi pi 20 Jul 12 13:10 .gitignore
8
4 -rw-r--r-- 1 pi pi 3159 Jul 12 13:10 __init__.py
9
4 -rw-r--r-- 1 pi pi 1850 Jul 12 13:10 README.md
10
4 -rw-r--r-- 1 pi pi 77 Jul 12 13:10 requirements.sh
11
4 -rw-r--r-- 1 pi pi 23 Jul 12 13:10 requirements.txt
12
4 -rw-r--r-- 1 pi pi 35 Jul 12 13:10 settings.json
13
4 drwxr-xr-x 3 pi pi 4096 Jul 12 13:10 test
14
4 drwxr-xr-x 4 pi pi 4096 Jul 12 13:10 vocab
15
16
(mycroft-core) [email protected]:~/skills/reginaneon-av-music.reginaneon $ sudo chown -R mycroft:mycroft .
17
(mycroft-core) [email protected]:~/skills/reginaneon-av-music.reginaneon $ ls -las
18
total 48
19
4 drwxr-xr-x 6 mycroft mycroft 4096 Jul 12 13:11 .
20
4 drwxrwxrwx 37 mycroft mycroft 4096 Jul 12 13:10 ..
21
4 drwxr-xr-x 4 mycroft mycroft 4096 Jul 12 13:10 dialog
22
4 drwxr-xr-x 8 mycroft mycroft 4096 Jul 12 13:10 .git
23
4 -rw-r--r-- 1 mycroft mycroft 20 Jul 12 13:10 .gitignore
24
4 -rw-r--r-- 1 mycroft mycroft 3159 Jul 12 13:10 __init__.py
25
4 -rw-r--r-- 1 mycroft mycroft 1850 Jul 12 13:10 README.md
26
4 -rw-r--r-- 1 mycroft mycroft 77 Jul 12 13:10 requirements.sh
27
4 -rw-r--r-- 1 mycroft mycroft 23 Jul 12 13:10 requirements.txt
28
4 -rw-r--r-- 1 mycroft mycroft 35 Jul 12 13:10 settings.json
29
4 drwxr-xr-x 3 mycroft mycroft 4096 Jul 12 13:10 test
30
4 drwxr-xr-x 4 mycroft mycroft 4096 Jul 12 13:10 vocab
Copied!

Where to go for more assistance

Join us in the Skills Mycroft Chat room or join us in the Mycroft Forum.
Last modified 7mo ago