Zammad is a Rails application with a real data model, a themable customer portal, and a full admin surface. That means the deeper customizations — new fields, branded portal, hardened login, tuned services — are all within reach of your vibe-code agent, which can edit configs, run migrations, and restart services while explaining each step. These ten are the customizations owners ask for once the basics are running.
1. Add custom ticket fields with working rules
Zammad’s object manager lets you add fields to tickets, users, organizations, and groups — select boxes, multi-selects, booleans, dates. Fields alone are clutter; paired with Core Workflows they become real process, like requiring “Product Area” only when priority is high. The agent can create the attribute, the workflow rules, and verify they show in the UI and the API. Custom attributes also become filterable, so your new field works in overviews and reports immediately. Say “Add a ‘Product Area’ select field to tickets with our five product lines, require it when priority is high, and show it in the agent sidebar.”
2. Brand the customer portal and login page
The customer portal is where your customers file tickets, so it should look like your company. The agent can set your logo, favicon, page title, and public portal colors, and inject custom CSS for the fine details like button styling on the new-ticket form. It will tell you honestly which parts are settings and which are CSS workarounds. Keep the knowledge base in the portal enabled or customers will email instead of self-serving. Try “Put our logo and brand color on the customer portal, rename the tab title, and make the submit button match our site.”
3. Brand your notification and signature templates
Zammad’s outbound mail — ticket notifications, password resets, welcome emails — comes from editable templates and your notification sender address. The agent can update the signature block, align the notification address with your domain so SPF passes, and restyle the HTML notification layout. Ask “Set notifications to come from support@mydomain.com, add our branded signature to all agent replies, and fix the template so links point to our portal URL.”
4. Tighten roles and group permissions
Default permissions are broad. Least-privilege means agents see only their groups, customers only their own tickets, and reporting only for managers. The agent can audit current roles against reality, split an over-powered role into agent and admin, and test by impersonating a sample account. Say “Audit all roles, make sure agents can only see and update tickets in their own groups, and give reporting access only to team leads.”
5. Enforce 2FA, password policy, and LDAP sync
Zammad supports two-factor authentication, configurable password policy, and LDAP/Active Directory integration for agent accounts. The agent can enable required 2FA for agents, raise the password minimums, and wire your LDAP server with a filtered group so only actual staff become agents. Honest caveat: existing accounts get a grace period, plan a cutover date. Try “Require two-factor for every agent account, set passwords to 14 characters minimum, and sync agents from our LDAP ‘helpdesk’ group nightly.”
6. Split departments into separate groups and SLAs
One group with one SLA works until sales questions bury outage reports. The agent can create per-department groups with their own signatures, assign agents, and give each group its own SLA calendar and targets — support 24/5, billing 8/5. Overviews per group come along for the ride. Say “Create Sales, Support, and Billing groups with separate signatures and SLAs, move our current agents into the right ones, and build an overview per group.”
7. Build a text module library
Text modules are the ::shortcodes:: agents expand into full paragraphs — greetings, troubleshooting steps, policy explanations. A maintained library cuts writing time and keeps tone consistent across agents. Group them by prefix so ::refund:: and ::refund-escalation:: sit next to each other. The agent can generate the initial set from your docs, organize by topic, and prune duplicates. Ask “Create text modules for our ten most common replies — greeting, refund policy, password reset, outage apology — grouped by topic with clear ::codes::.”
8. Tune the services for your volume
Zammad runs as several services — web, background worker, websocket — and defaults fit small installs. When you feel drag, the agent can inspect load, raise worker concurrency, tune the websocket settings, and confirm Elasticsearch keeps up with full-text indexing. Check the boring causes first: disk fullness and memory pressure kill more Zammad installs than bad configuration. It should measure before and after so you know it helped. Try “Ticket search feels slow — check Elasticsearch health, tune the worker and websocket services for our server size, and show me the before/after search time.”
9. Backups you can actually restore from
A backup that has never been restored is a hope, not a plan. Zammad ships backup scripts; the agent can schedule them to a separate disk or off-box, encrypt the archive, and run a real restore test into a scratch directory to prove the data comes back intact. Say “Set up nightly Zammad backups with a 30-day retention, push them off the server, and do a test restore so I know it works.”
10. Data hygiene: numbering, archiving, and GDPR deletion
Over years, a helpdesk accumulates stale tickets and personal data you are legally required to delete on request. Zammad has built-in data privacy deletion for users and organizations. The agent can set a ticket number format that includes the year, archive closed tickets past a threshold, and build a documented process for full customer-data erasure. Test the deletion path on a dummy customer before a real request arrives; it is much calmer that way. Say “Switch ticket numbers to the YEAR-NUMBER format, archive tickets closed over a year ago, and show me the exact steps to fully delete a customer’s data when they ask.”
Customizations like these are where a private server pays off — you can change anything, and your agent knows where every knob lives. That combination is what you get with Zammad on OpenSysLab.