Skip to content

GLPI Improve

Continual-improvement register for GLPI 11. Record that a process is wrong, not just the ticket, and track it to a decision.

  • Register. One itemtype with full search integration: filtering, saved searches, CSV export. Fields are title, description, source, an optional link to the item it came from, an owner (user and/or group), expected benefit, priority and status.
  • Statuses: proposed → accepted → in progress → done/dropped. Setting done or dropped requires an outcome note; the save is refused without one.
  • Board. The register grouped by status, drag to move. Hand-rolled Tabler columns, not core’s Kanban.
  • Inbox. Two optional crons write candidates, never Improvements: a survey detractor scan and an SOP skip-pattern scan. Raising or dismissing a candidate is a manual action.
  • “Raise an improvement” link on Ticket, Change and Problem, prefilling a new entry linked back to the origin.
  • Monthly digest. Items in accepted or in progress with no recent update are notified to their owner group, one email per group.
  • glpi-ai tools: improvement_search (read) and improvement_raise (create, always as proposed).

Board with five columns, cards colour-coded by priority

Edit form refusing to save a done status with no outcome note

Inbox listing candidates from the survey feed and from fromPlugin()

Add form prefilled from an inbox candidate

GLPI Project This plugin
Unit of work Project with tasks, team roles, Gantt-adjacent shape One flat entry
Purpose Planning and running a piece of work Deciding whether a process change is worth doing, and recording the decision
Feeds None Survey detractors, SOP skip patterns, plus an API for your own
Closing Any status done/dropped require an outcome note
Terminal window
# from the GLPI root
git clone https://github.com/bijstaan/glpi-improve.git plugins/glpiimprove
php bin/console plugin:install -u glpi glpiimprove
php bin/console plugin:activate glpiimprove

Setup → Plugins → GLPI Improve. Opens on a status card: item counts per state, whether each feed is on, when each cron last ran.

Settings page: status card, survey feed, SOP skip feed, monthly review

Setting Default Notes
Survey feed off satisfaction_scaled_to_5 <= threshold within the lookback window
Survey threshold 2 (of 5) Compared against the scaled satisfaction column, not the raw one
Survey lookback 30 days
SOP skip feed off Requires glpisop active. Reads its tables directly, read-only
SOP skip threshold 3 times within the lookback window
SOP skip lookback 60 days
Review notifications on The monthly review always runs and counts stale items; this gates the email only
Stale after 30 days No update while accepted or in progress

No setting reaches the network. Every feed reads GLPI’s own tables.

plugin_glpiimprove_item covers the register, the board and the inbox actions. Granted at install to profiles holding core config UPDATE.

improvement_raise additionally needs that right at CREATE, plus glpi-ai’s write-tools switch.

  • No approval workflow, voting, cost/effort estimation or roadmap view.
  • No digest across an owner’s different groups: owning items in two groups produces two monthly emails.
  • The SOP skip feed reads glpisop’s table names, not its classes. A rename there makes the feed go quiet rather than error; the status card is where it shows.
  • An Improvement’s link to its origin is not cleared when the origin is purged.

GPL-3.0-or-later, the same licence as GLPI. The plugin is loaded into GLPI’s process and extends its classes, so it is a derivative work. See LICENSE.