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. pantheon-systems/terminus-secrets-plugin

Abandoned → [pantheon-systems/terminus-secrets-manager-plugin](/?search=pantheon-systems%2Fterminus-secrets-manager-plugin)ArchivedTerminus-plugin

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)24658.4k↓22.3%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 ago43 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 1mo 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

51

—

FairBetter than 96% of packages

Maintenance45

Moderate activity, may be stable

Popularity48

Moderate usage in the ecosystem

Community25

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

367d 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)
