Install DynamiteAgile
Five steps, top to bottom. Each command copies in one click, and a label says where to paste it: on your computer or on the server.
Latest version: 0.60.50 · 2026-11-05 — Export straight from the functional tree and the functional structure: an « Exporter ▾ » button on each screen gives its diagram in draw.io or PowerPoint, and its table in Excel. New: PowerPoint, with native shapes and arrows you move, recolour and retype (arrows follow the boxes); a large tree is cut into an overview then one slide per branch. The Exporter page also offers all of Diamond in PowerPoint. See all versions →
Already installed? ⚙ Admin → Update → « Mise à jour en ligne » (online update): check, read, approve, follow live.
Before you start: where are you installing from?
The computer on which you type the commands (the one showing this page). It is not necessarily where the tool will run: that is step 1. Every « on your computer » command follows this choice.
-
1 Where will the tool run?
Need help? An AI assistant guides you step by step
Open Claude (or your usual assistant) and paste this message: it reads this page and guides you one command at a time. Then paste what the screen shows, especially a red message. For a server that is not empty (other applications, Docker…) or with no Internet at all, it adapts the procedure.
Never give it a password or a private key: those are typed only in the terminal.
-
2 Get a server (VPS)
An empty server running Ubuntu 24.04: 1 CPU and 1 GB of memory are enough. Choose a host:
- On hostinger.com, take a VPS plan (the smallest is enough).
- hPanel → VPS → OS & Panel: Ubuntu 24.04, the plain system (no panel, no application).
- Overview page: note the IP address; Root password → Change to choose the password.
- Security → Firewall: if there are rules, allow ports 22, 80 and 443.
- On oracle.com/cloud/free, create a « Free Tier » account.
- Compute → Instances → Create instance: image Canonical Ubuntu 24.04, shape VM.Standard.A1.Flex (or VM.Standard.E2.1.Micro if the other is unavailable), both « Always Free ».
- While creating it, Save private key: keep this
.keyfile in your Downloads folder, it replaces the password. - Instance page → Subnet → Security List → Add Ingress Rules: source
0.0.0.0/0, TCP, port 80 then 443. Note the public IP address.
- On digitalocean.com (students: first activate the GitHub Student Developer Pack), Create → Droplets.
- Image Ubuntu 24.04, the smallest plan, password authentication (choose it).
- Note the Droplet's IP address. No firewall to set: the installation takes care of it.
-
3 Give it a web address
The team will open the tool at an address like
workshop.my-domain.com, over HTTPS. In the domain's DNS manager, create an A record: nameworkshop, value203.0.113.10.At Hostinger, nothing to set: your VPS already has a free name (hPanel → VPS → Overview → Hostname, e.g.
srv123456.hstgr.cloud) that points to its IP address. Use it as is, or with a word in front:workshop.srv123456.hstgr.cloud.No domain name?
- At Hostinger: the VPS's free name, above. Or buy a domain (about ten dollars a year).
- Free: a DuckDNS subdomain (
my-team.duckdns.org): sign in, choose the name, paste the IP address, update ip.
Check a few minutes later, in a terminal ():
nslookup workshop.my-domain.comThe answer must show
203.0.113.10. Otherwise, wait a little longer. -
4 Connect to the server
Open a terminal on your computer () and type:
ssh root@203.0.113.10Once, protect the downloaded key (otherwise the connection refuses it):
icacls $HOME\Downloads\ssh-key.key /inheritance:r /grant:r "$($env:USERNAME):(R)"chmod 600 ~/Downloads/ssh-key.keyThen connect:
ssh -i $HOME\Downloads\ssh-key.key ubuntu@203.0.113.10ssh -i ~/Downloads/ssh-key.key ubuntu@203.0.113.10The file has another name? Replace
ssh-key.keywith it.Answer
yesthe first time, then type the password if asked (nothing shows, that's normal). The line now starts withroot@…orubuntu@…: you are on the server. No terminal? The host's Console button does the same. -
5 Install, in one command
curl -fsSL https://jpdesbiens11.github.io/Dynamite-Agile/install.sh | sudo DA_LANG=en bash -s -- workshop.my-domain.com me@example.comTwo to five minutes. The end shows
== 7/7 Installed, the address and the temporary password of theadminaccount. Open https://workshop.my-domain.com, sign in, choose your password, then ⚙ Admin → Spaces → Commencer to create your product's Space with AI.What the command does
It installs Python, git, certbot and the firewall, fetches the code into
/opt/dynamite_agile, gets the HTTPS certificate (renewed automatically) and starts the service. To update later: ⚙ Admin → Update, or run the same command again; the data stays. The script is readable here: deploy/install.sh. -
2 Prepare the local server
A PC or mini-PC always on, on the team's network, with Ubuntu 24.04 installed (installation USB key from ubuntu.com). It needs Internet during the installation only (five minutes, to download Python and the tool); afterwards it may stay without Internet, the tool does not need it.
On this server, note its IP address on the network:
hostname -INo Internet at all, even to install? Ask the AI assistant (step 1) for the USB-key procedure.
-
3 Connect to the server
At the server's keyboard, or from your computer, in a terminal ():
ssh your-name@192.168.1.20Answer
yesthe first time, type your password (nothing shows, that's normal). -
4 Install, in one command
curl -fsSL https://jpdesbiens11.github.io/Dynamite-Agile/install.sh | sudo DA_LANG=en bash -s -- --localTwo to five minutes. The end shows
== 7/7 Installed, the address (https://server-name), the temporary password of theadminaccount and the file of the team's certificate,/opt/dynamite_agile/data/tls/partage/ca-dynamite.crt.What the command does
As for an online server, but without a domain: it creates the team's certificate authority and this server's HTTPS certificate, and opens ports 80 and 443 to the local network's addresses only. The script: deploy/install.sh.
-
5 Open the tool on each computer
Once per computer, get the team's certificate, from your computer:
scp your-name@192.168.1.20:/opt/dynamite_agile/data/tls/partage/ca-dynamite.crt .then trust it:
Import-Certificate -FilePath .\ca-dynamite.crt -CertStoreLocation Cert:\CurrentUser\Rootsudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain ca-dynamite.crtsudo cp ca-dynamite.crt /usr/local/share/ca-certificates/ && sudo update-ca-certificatesOpen
https://192.168.1.20, accountadminand the temporary password, then ⚙ Admin → Spaces → Commencer. Firefox has its own certificates: Settings → Certificates → Authorities → Import. -
2 Choose the team PC
Windows 10, 11 or Server, on the team's network and always on (Settings → System → Power: sleep Never). The network must be Private (Settings → Network & Internet → Properties). Internet is needed during the installation only.
-
3 Open PowerShell as administrator
On this PC: Win + X → Terminal (Admin), then Yes.
The line starts with
PS C:\WINDOWS\system32>. -
4 Install, in one command
irm https://jpdesbiens11.github.io/Dynamite-Agile/install.ps1 -OutFile $env:TEMP\install-dynamite.ps1; $env:DA_LANG = "en"; powershell -ExecutionPolicy Bypass -File $env:TEMP\install-dynamite.ps1Five to ten minutes. The end shows
== Installed, the address (https://pc-name) and the temporary password of theadminaccount.What the command does
It installs Python and Git, fetches the code into
C:\DynamiteAgile, creates the team's HTTPS certificate, opens port 443 for the private network only and creates the task that starts the tool with Windows. The script: deploy/install.ps1. -
5 Open the tool on each computer
Copy
C:\DynamiteAgile\data\tls\partage\ca-dynamite.crtto each computer (USB key, shared folder), then, in the file's folder, trust it:Import-Certificate -FilePath .\ca-dynamite.crt -CertStoreLocation Cert:\CurrentUser\Rootsudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain ca-dynamite.crtsudo cp ca-dynamite.crt /usr/local/share/ca-certificates/ && sudo update-ca-certificatesOpen
https://pc-name, accountadminand the temporary password, then ⚙ Admin → Spaces → Commencer.
From the installation: the DEMO Space
The tool opens on a single Space, DEMO: the guided tour of every tool, a sandbox where everything can be tried risk-free, the training documents and the reference library. It also holds a complete example, the Rover: a small autonomous robot built on an all-terrain RC car, driven by a Raspberry Pi and a web app, that slows down near an obstacle and goes around it slowly. Every module is filled from MVP 0 to MVP 3: needs and requirements, Test Base, function tree, structure, parts, risks and DFMEA, backlog, ideation, Pugh, Kepner-Tregoe, deliverables, PDP plan and pages that explain every decision.
- ExploreDynamite → DEMO → « Rover — accueil du projet »: the reading guide says where to look, module by module.
- Start your project⚙ Admin → Spaces → Commencer: an AI assistant prepares your product's Space.
- Hide DEMOWhen the real project starts, ⚙ Admin → Spaces → DEMO → « Cacher pour tous ». The Help documentation stays available.
What next? The guide explains each module, from MVP0 to launch. An error message? See If something gets stuck, or paste it to your AI assistant.
If something gets stuck
Paste the message to your AI assistant, or look it up here.
“ports 80 or 443 are already in use”
Another application is using the server's web ports, often a Docker application installed by your host's control panel (an AI agent, n8n, an admin panel…). See which one, then stop it or use another server:
sudo ss -ltnp | grep -E ':(80|443) 'docker ps
If it is Traefik (the gate of Docker applications, for example on a Hostinger VPS): do not stop it, install
Dynamite | Agile behind it. Traefik keeps the ports and provides the HTTPS certificate; your other applications stay as
they are. The address must point to the server (at Hostinger: dynamite.srvXXXX.hstgr.cloud).
curl -fsSL https://jpdesbiens11.github.io/Dynamite-Agile/install.sh | sudo DA_LANG=en bash -s -- --traefik dynamite.srvXXXX.hstgr.cloud
If the message says /opt/dynamite_agile already exists (an older installation): nothing was
changed; install next to it, in another folder.
curl -fsSL https://jpdesbiens11.github.io/Dynamite-Agile/install.sh | sudo DA_LANG=en DA_DIR=/opt/dynamite-agile-open bash -s -- --traefik dynamite.srvXXXX.hstgr.cloud“the domain … does not answer yet” or certbot: “NXDOMAIN”, “Timeout”
The A record is not visible yet, or port 80 is closed in the control-panel firewall. Check with nslookup from
your computer, open 80 and 443, wait a few minutes and run the same command again.
“Permission denied” when connecting with SSH
Wrong root password (nothing shows while you type, that's normal). Set a new one in your host's control panel, or use its web console.
“curl: command not found”
sudo apt update && sudo apt install -y curl“the service does not start”
The script shows the last lines of the log: each refusal names the faulty value and the fix. To see it again:
journalctl -u dynamite-agile -n 50 --no-pagerWindows PC: “PowerShell is not running as administrator”
Close the window, then Win + X → Terminal (Admin) → Yes, and run the same command again.
Windows PC: “port 443 is already used by …”
Another web service holds the port (IIS, a video-call or antivirus program…). Stop it, or install on another port:
powershell -ExecutionPolicy Bypass -File $env:TEMP\install-dynamite.ps1 -Port 8443Windows PC: the team cannot open the address
The PC's network is marked Public (Settings → Network & internet → Properties → Private), or the network
does not know the PC's name: open https:// followed by the IP address shown at the end of the installation.
“Your connection is not private” (NET::ERR_CERT_AUTHORITY_INVALID)
This computer does not know the team's authority yet: import ca-dynamite.crt (step “Trust the certificate”),
then close and reopen the browser. Do not bypass the warning.
On my computer: “python is not recognized”, or the address does not open
Close and reopen the terminal after installing Python. If port 8080 is already taken, start with --port 8090
and open http://127.0.0.1:8090.
Afterwards, on the server
| To… | On the server |
|---|---|
| Update the tool | sudo bash /opt/dynamite_agile/deploy/redeploy.sh (your data is never touched) |
| Restart | sudo systemctl restart dynamite-agile |
| See the log | journalctl -u dynamite-agile -n 100 --no-pager |
| Forgotten admin password | sudo -u dynamite python3 /opt/dynamite_agile/app_dynamite_agile.py --reset-password admin |
| Back up | In the tool: ⚙ Admin → Update et sauvegardes; plus your host's server backup |
| Windows PC: update, restart, uninstall | Run the installation command again (the data are kept);
Restart-ScheduledTask "Dynamite Agile"; … install-dynamite.ps1 -Desinstaller (keeps data) |
| Windows PC: log, forgotten password | Get-Content C:\DynamiteAgile\data\logs\server.log -Tail 50;
python C:\DynamiteAgile\app_dynamite_agile.py --reset-password admin |
| Move from trial to team | Follow the “On an online server” path: the same command with your domain |