PHPackages                             pantheon-systems/terminus-secrets-plugin - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. pantheon-systems/terminus-secrets-plugin

Abandoned → [pantheon-systems/terminus-secrets-manager-plugin](/?search=pantheon-systems%2Fterminus-secrets-manager-plugin)ArchivedTerminus-plugin[Utility &amp; Helpers](/categories/utility)

pantheon-systems/terminus-secrets-plugin
========================================

Secrets - A Terminus plugin that allows for manipulation of a 'secrets' file for use with Quicksilver.

1.3.2(1y ago)24689.3k↓39.7%15[6 issues](https://github.com/pantheon-systems/terminus-secrets-plugin/issues)[4 PRs](https://github.com/pantheon-systems/terminus-secrets-plugin/pulls)MITPHP

Since Dec 17Pushed 1y ago3 watchersCompare

[ Source](https://github.com/pantheon-systems/terminus-secrets-plugin)[ Packagist](https://packagist.org/packages/pantheon-systems/terminus-secrets-plugin)[ RSS](/packages/pantheon-systems-terminus-secrets-plugin/feed)WikiDiscussions 1.x Synced 2w ago

READMEChangelogDependenciesVersions (18)Used By (0)

Terminus Secrets Plugin
=======================

[](#terminus-secrets-plugin)

[![CircleCI](https://camo.githubusercontent.com/87704e13ea9b98e27a99ec1011ca3bed0c23618e6592b1deb6dd86c6e85437af/68747470733a2f2f636972636c6563692e636f6d2f67682f70616e7468656f6e2d73797374656d732f7465726d696e75732d736563726574732d706c7567696e2e7376673f7374796c653d736869656c64)](https://circleci.com/gh/pantheon-systems/terminus-secrets-plugin)[![Actively Maintained](https://camo.githubusercontent.com/2ae5ff81f271fb028d720adee6b3595770166f3707a4705a4a2a3b71c332b249/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f50616e7468656f6e2d4163746976656c795f4d61696e7461696e65642d79656c6c6f773f6c6f676f3d70616e7468656f6e26636f6c6f723d464644433238)](https://pantheon.io/docs/oss-support-levels#actively-maintained-support)

[![Terminus v1.x Compatible](https://camo.githubusercontent.com/9ea8fb0893368c0b24f172cc2df676fa4bb7246d14c0377b7924a6918065be26/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7465726d696e75732d76312e782d677265656e2e737667)](https://github.com/pantheon-systems/terminus-secrets-plugin/tree/1.x)[![Terminus v0.x Compatible](https://camo.githubusercontent.com/275e0fbd20cfb6f5eeb401daf333848da99283a3904b6b8482de0d62e0d04f62/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7465726d696e75732d76302e782d677265656e2e737667)](https://github.com/pantheon-systems/terminus-secrets-plugin/tree/0.x)

**PLEASE SEE REPLACEMENT PLUGIN, [Terminus Secrets Management Plugin](https://github.com/pantheon-systems/terminus-secrets-manager-plugin), CURRENTLY IN EARLY ACCESS, AS A POSSIBLE ALTERNATIVE.**

Terminus Plugin that allows for manipulation of a simple `secrets.json` file for use with Quicksilver on [Pantheon](https://www.pantheon.io) sites.

Adds a command 'secrets' to Terminus 1.x which you can use to add, fetch, remove and update. For a version that works with Terminus 0.x, see the [0.x branch](https://github.com/pantheon-systems/terminus-secrets-plugin/tree/0.x).

Use as directed by Quicksilver examples.

Be aware that since this manages a simple json file in the network attached storage, filesystem synchronization operations will affect the secrets. You should not use this method if your use-case is to have different secrets in different environments. For that, or for secrets that are sensitive, we recommend [Lockr](https://github.com/lockr/lockr-terminus).

Background
----------

[](#background)

This plugin writes entries into the file `~/files/private/secrets.json` (NOTE: This refers to a different `private` directory than the `private` directory used to store your Quicksilver scripts!). This file is, naturally enough, a JSON file containing multiple keys that is not included in your project's source code. The `terminus secrets` script will fetch this file, modify is as requested, and then write it back to the Pantheon site.

Before this Terminus plugin can be used, the `secrets.json` file must be created in each environment. To create the file call the secrets set command and add a key. This will automatically create the file in that environment.

```
terminus secrets:set site.env key value

```

The secrets directory is **not** copied to `test` and `live` during deployments (as it is not tracked in the project repository); you must therefore individually set secrets on each environment where you would like them to be available.

**Also, be aware that your secrets may be overwritten by filesystem sync operations. For instance, if you check the "pull files and database from Live" option when deploying to `TEST`, that will overwrite the `TEST` env with secrets (or a lack thereof) in `LIVE`. If you intend to use `secrets.json` for production, make sure you set the same file in all environments to avoid confusion.**

You can create all your keys in the live environment and then Clone files to other environments to copy the keys.

Installation
------------

[](#installation)

For help installing, see [Manage Plugins](https://pantheon.io/docs/terminus/plugins/)

### Installation for Terminus 3.x

[](#installation-for-terminus-3x)

Terminus now has plugin management built in to it.

`terminus self:plugin:install pantheon-systems/terminus-secrets-plugin`

### Installing for Terminus 2.x

[](#installing-for-terminus-2x)

```
mkdir -p ~/.terminus/plugins
composer create-project -d ~/.terminus/plugins pantheon-systems/terminus-secrets-plugin:~1

```

Configuration
-------------

[](#configuration)

This plugin requires no configuration to use.

Usage
-----

[](#usage)

Write "value" into "key" in the "test" environment of "sitename".

```
terminus secrets:set site.env key value

```

Remove the secret "key" in the "test" environment of "sitename".

```
terminus secrets:delete site.env key

```

Show current value of "key" in the "test" environment of "sitename".

```
terminus secrets:show site.env key

```

Show all available keys in the "test" environment of "sitename"

```
terminus secrets:list site.env

```

You may pass the `--file` option to this terminus plugin to read/write keys to a file named something other than `secrets.json`; this can be exceedingly helpful when storing configuration keys that may differ between environments as this prevents your environment-specific files getting overwritten by database and file clone operations.

Learn more about Terminus and Terminus Plugins at:

Terminus 0.x Version
--------------------

[](#terminus-0x-version)

This plugin is compatible with both Terminus 1.x and Terminus 0.x. This works because Terminus 1.x searches for commandfiles in `src/Commands`, and Terminus 0.x searches in `Commands`. In general, Terminus plugins should only support one version of Terminus. It is recommended to use the branches `1.x` and `0.x` for this purpose. The exception to this rule is Terminus plugins that have been widely installed in Continuous Integration scripts via `git clone` without using a `--branch` designation. In that case, placing both versions on the same branch can be helpful in maintaining backwards compatibility with these scripts.

Help
----

[](#help)

Run `terminus list secrets` for a complete list of available commands. Use `terminus help ` to get help on one command.

Tip
---

[](#tip)

If you need multiple versions of a key for different environments or one for development and one for production add them all with a naming structure that helps when listing the keys

```
keyName_production: value
keyName_development: value

```

or

```
keyName_multiDevName: value

```

There is no arrays of keys in the json file so all keys are at the root.

###  Health Score

48

—

FairBetter than 94% of packages

Maintenance37

Infrequent updates — may be unmaintained

Popularity48

Moderate usage in the ecosystem

Community20

Small or concentrated contributor base

Maturity72

Established project with proven stability

 Bus Factor1

Top contributor holds 56% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~384 days

Recently: every ~753 days

Total

9

Last Release

460d ago

Major Versions

0.x-dev → 1.1.02016-12-17

### Community

Maintainers

![](https://www.gravatar.com/avatar/b34cc6bd882277b6c6dda19bf6631ae5c3a909fd667c826a15121642cdc051b2?d=identicon)[greg.1.anderson](/maintainers/greg.1.anderson)

---

Top Contributors

[![greg-1-anderson](https://avatars.githubusercontent.com/u/612191?v=4)](https://github.com/greg-1-anderson "greg-1-anderson (28 commits)")[![kporras07](https://avatars.githubusercontent.com/u/2217820?v=4)](https://github.com/kporras07 "kporras07 (13 commits)")[![stovak](https://avatars.githubusercontent.com/u/119924?v=4)](https://github.com/stovak "stovak (3 commits)")[![gchaix](https://avatars.githubusercontent.com/u/188635?v=4)](https://github.com/gchaix "gchaix (1 commits)")[![flickerbox-tom](https://avatars.githubusercontent.com/u/632978?v=4)](https://github.com/flickerbox-tom "flickerbox-tom (1 commits)")[![LukasRos](https://avatars.githubusercontent.com/u/192050?v=4)](https://github.com/LukasRos "LukasRos (1 commits)")[![NicholasRBowers](https://avatars.githubusercontent.com/u/1668224?v=4)](https://github.com/NicholasRBowers "NicholasRBowers (1 commits)")[![paulsheldrake](https://avatars.githubusercontent.com/u/1062456?v=4)](https://github.com/paulsheldrake "paulsheldrake (1 commits)")[![EdwardAngert](https://avatars.githubusercontent.com/u/17991901?v=4)](https://github.com/EdwardAngert "EdwardAngert (1 commits)")

### Embed Badge

![Health badge](/badges/pantheon-systems-terminus-secrets-plugin/health.svg)

```
[![Health](https://phpackages.com/badges/pantheon-systems-terminus-secrets-plugin/health.svg)](https://phpackages.com/packages/pantheon-systems-terminus-secrets-plugin)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
