## Summary
Updates the `/fleet-gitops` marketing page
(`website/views/pages/fleet-gitops.ejs`) and its meta tags
(`website/config/routes.js`) to lead with **infrastructure as code**
rather than **GitOps** throughout headings, body copy, and meta tags —
using varied, natural phrasing instead of rigidly prefixing "Fleet"
every time.
Also adds a new **AI-accelerated IT** section with Kilocode screenshot
reference and three pitch points about AI-accelerated device management.
### Changes
- Page title tag: `Fleet GitOps` → `Infrastructure as code`
- Meta description updated to emphasize infra-as-code
- Hero `<h4>`: `Fleet GitOps` → `Infrastructure as code`
- Bottom CTA `<h4>`: `Fleet GitOps` → `Infrastructure as code for your
devices`
- Hero paragraph rewritten to lead with infra-as-code
- Features list item heading: `Get to know Fleet infrastructure as code`
→ `Manage your infrastructure as code`
- Section heading: `Get to know Fleet infrastructure as code` →
`Infrastructure as code for your devices`
- Body copy: `adopt Fleet infrastructure as code` → `adopt
infrastructure as code for device management`
- Image alt text, caption, and two-column feature body copy updated
- Workshop CTA heading: `GitOps workshop` → `Infrastructure as code
workshop`
- Challenges section rewritten to lead with infra-as-code; GitOps still
mentioned where it fits naturally
- Testimonial quote updated to reference infra-as-code
- **New**: AI-accelerated IT section with Kilocode screenshot and three
pitch points:
- Everyone can contribute, but an expert from IT stays the human in the
loop
- Without GitOps there is no way to do AI-accelerated device management
- Iterate more quickly by reducing friction and hand-offs with natural
language changes via tools like Kilocode
### What stays as GitOps
- Workshop href (`/gitops-workshop`) — URL unchanged
- One natural mention: "If DevOps or GitOps is already used by an
organization…"
- Workshop link anchor text in the challenges section body
Built for
[mikermcneil](https://fleetdm.slack.com/archives/D0AFASLRHNU/p1771879170001129)
by [Kilo for Slack](https://kilo.ai/features/slack-integration)
---------
Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
Co-authored-by: Mike McNeil <mikermcneil@users.noreply.github.com>
Co-authored-by: Kilo Code <kilo@kilo.ai>
## Summary
On the fleetdm.com/pricing page FAQ section, the text listed "Lear" as
one of the notable companies using Fleet. This PR replaces "Lear" with
"MrBeast", which is already featured in the logo carousel on the
homepage and other pages across the site.
### Changes
- In `website/views/pages/pricing.ejs`: Updated the FAQ answer text to
replace "Lear" with "MrBeast" in the list of notable Fleet customers
(Epic Games, Cisco, Stripe, Fastly, MrBeast, and more).
### Context
- MrBeast logo (`logo-mr-beast-90x32@2x.png`) is already present in the
logo carousel component used across the site
- This change makes the pricing page FAQ consistent with the logo
carousel branding
Built for
[mikermcneil](https://fleetdm.slack.com/archives/D0AFASLRHNU/p1771625802869279)
by [Kilo for Slack](https://kilo.ai/features/slack-integration)
Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
Because Fleet is not uncommonly referred to IT departments from the
CISO, and so that's how IT admins hear about it. Security engineers
often already know about Fleet, and if it's for the CISO, it's obviously
for them too!
- `articles/custom-os-settings.md`: Added one sentence to the Windows
section: "For local testing on Windows,
[SyncMLViewer](https://github.com/okieselbach/SyncMLViewer/releases) is
a useful GUI tool for inspecting MDM traffic."
- `website/views/pages/os-settings.ejs`: Added a matching list item to
the Windows platform section on the `fleetdm.com/os-settings` page,
mirroring the iMazing mention in the Apple section.
This pull request adds support for the PuTTY application (Windows) to
the maintained apps system, including metadata,
installation/uninstallation scripts, and frontend icon integration. The
changes ensure that PuTTY can be managed and visually represented in the
software catalog.
**Maintained Apps Integration:**
- Added a new input file `putty.json` with PuTTY metadata for Windows,
specifying installer details and categories.
- Generated an output file `putty/windows.json` containing version
information, install/uninstall scripts, installer URL, and SHA256 hash
for PuTTY.
- Updated the aggregated `apps.json` output to include PuTTY with its
description and unique identifier for the Windows platform.
**Frontend/Icon Integration:**
- Added a new React SVG icon component for PuTTY in `Putty.tsx`.
- Registered the PuTTY icon in the icon index and mapped it in
`SOFTWARE_NAME_TO_ICON_MAP` for display in the software catalog.
[[1]](diffhunk://#diff-628095892e1d16090be1db6cc1a5c9cebc65248c32a8b1312385394818f2907bR15)
[[2]](diffhunk://#diff-628095892e1d16090be1db6cc1a5c9cebc65248c32a8b1312385394818f2907bR412)
This pull request adds support for the LastPass password manager to the
maintained apps ecosystem, including its metadata, installation and
uninstallation scripts, and a new icon for the frontend. The changes
ensure that LastPass can be managed like other supported applications
and is visually represented in the software UI.
**LastPass app integration:**
* Added LastPass metadata to `winget` inputs, including installer
details and default categories.
* Added LastPass to the maintained apps output list (`apps.json`) with a
description for display in the UI.
* Created a new output file for LastPass (`lastpass/windows.json`)
specifying versioning, detection queries, install/uninstall scripts, and
installer hash.
**Frontend/UI updates:**
* Added a new React SVG icon component for LastPass (`LastPass.tsx`).
* Registered the LastPass icon in the software icon map so it appears in
the UI when LastPass is detected.
[[1]](diffhunk://#diff-628095892e1d16090be1db6cc1a5c9cebc65248c32a8b1312385394818f2907bR10)
[[2]](diffhunk://#diff-628095892e1d16090be1db6cc1a5c9cebc65248c32a8b1312385394818f2907bR297)
Related to: https://github.com/fleetdm/fleet/issues/40127
Changes:
- Updated errors logged by Android proxy endpoints to include more
information about the error.
- Added a `deviceNoLongerManaged` exit to the `delete-android-device`
endpoint that is used when the Google API returns a "Device is no longer
being managed" error.
- Added a `policyNotFound` exit to the `modify-android-policies` and
`modify-enterprise-app-policy` endpoints that is used when the Google
API returns a 404 response
- Added a `invalidPolicyName` exit to the `modify-android-device`
endpoint that is used when the Google API returns an error related to
the policy name sent in the request body.
Changes:
- Fixed a broken link on /customers
(`/announcements/articles/global-workforce-management-company-achieves-compliance-and-clarity-with-fleet`
»
`/announcements/global-workforce-management-company-achieves-compliance-and-clarity-with-fleet`)
- Added a redirect for the security handbook page
- Fixed two broken links in articles
Changes:
- upgraded the version of jsforce used by the website (`1.11.1` »
`3.10.14`)
- Updated the error handling in the updateOrCreateContactAndAccount
helper to work with the updated version of jsforce
Changes:
- Added /admin/reset-trial, a page where website admins can reset local
Fleet Premium trials.
- Added a link to the reset trial page to the navigation on admin pages.
Closes: https://github.com/fleetdm/fleet/issues/38740
Changes:
- Reduced the padding between H2 and H3 headings on handbook pages
- Updated the link and chevron icons used on handbook pages to be green
Changes:
- Added a new exit to the receive-from-github webhook that is used when
a provided `botSignature` does not match the `githubBotWebhookSecret`
config variable
Changes:
- Added a new attribute to the user record:
`fleetPremiumTrialEmailSentAt` - A JS timestamp representing when a user
was sent an email about their Fleet Premium trial
- Updated the `deliver-expired-local-trial-emails` and
`manage-fleet-premium-trial-instances` scripts to set this value when
users are sent an email about their expired trial.
Closes: https://github.com/fleetdm/fleet/issues/37626
Changes:
- Updated the sidebar on handbook department pages to include a list of
related topics (pages in the same handbook folder)
Closes: https://github.com/fleetdm/fleet/issues/37214
Changes:
- Updated the build-static-content script to not modify the uninstall
scripts for Windows Fleet-maintained apps when adding them to the
website's configuration
- Updated the Fleet-maintained apps template page to show uninstall
scripts for Windows apps.
Closes: https://github.com/fleetdm/fleet/issues/37021
Changes:
- Updated platform names shown on platform-specific columns on osquery
table documentation pages to have consistent capitalization and names.
Changes:
- Increased the margin on the desktop header navigation menu to prevent
the dropdown menus from overflowing outside hte page's container at
certain widths
- Removed the right margin from "Get a demo" buttons
Closes: https://github.com/fleetdm/fleet/issues/36465
Closes: https://github.com/fleetdm/fleet/issues/36467
Related to: https://github.com/fleetdm/confidential/issues/14254
Changes:
- Updated "Try it yourself" links to go to the `/try` page (Which
redirects users who aren't logged in to the /login page)
- Removed the `<signup-modal>` and `<signup-button>` components
- Removed the route for the /register page, and added a redirect to go
to /login
- Updated the /login page to have the signup form, and to match the
latest wireframes
- Updated the /try page to have a fake Fleet UI as a background
(previously an image)
Changes:
- Updated the `get-enterprise-applications` Android proxy endpoint to
use the `enterprises.applications.get` method (It is currently using the
enterprises.devices.get` method)
- Updated errors returned by the `get-enterprise-applications` endpoint
to include more information from the error returned by Google.