Pre-alpha. No tagged release and no upgrade path between versions. Use for evaluation and development only, not production.
Addons DevPre-alpha

Extend CRM pipeline

Add a custom kanban stage column or modify pipeline behavior without forking crm.

Add a pipeline stage

  1. Create XML data in your custom addon:
<record id="stage_negotiation" model="crm.stage">
    <field name="name">Negotiation</field>
    <field name="sequence">25</field>
</record>
  1. Add the file to your manifest data list.
  2. Update module: go run . -- -c sumeru.conf -u crm,my_custom --stop-after-init

Custom kanban columns

Register a group expander in your addon init.go:

swcmeta.RegisterKanbanGroupExpander("crm.lead", "stage_id", myExpandFn)

See sumeru_addons/crm/services/hooks.go for the reference implementation.

React to stage changes

event.Subscribe("record.updated", func(ctx context.Context, ev event.Event) error {
    if ev.Payload["model"] != "crm.lead" {
        return nil
    }
    // inspect stage_id in values
    return nil
})

Object actions

Add a form button via XML inherit and register:

orm.RegisterObjectAction("crm.lead", "action_my_custom", handler)

See also