@tityra/cli 1.1.1 → 1.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +7 -0
- package/README.md +23 -24
- package/dist/commands/audits.js +1 -1
- package/dist/commands/projects.js +2 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.1.2
|
|
4
|
+
|
|
5
|
+
- Explain organisation prepaid credits and the Starter, Pro and Enterprise plans.
|
|
6
|
+
- Update audit command help for credit budgets and spending approval in Tityra.
|
|
7
|
+
- Make the 100-page limit explicit for In-Depth Audits and weekly monitoring.
|
|
8
|
+
- Clarify credit-funded monitoring on every plan and the CLI's pause-only financial boundary.
|
|
9
|
+
|
|
3
10
|
## 1.1.1
|
|
4
11
|
|
|
5
12
|
- Update customer-facing audit terminology to describe website content audits.
|
package/README.md
CHANGED
|
@@ -6,14 +6,14 @@ Tityra's website content audits review content delivery, structure and available
|
|
|
6
6
|
|
|
7
7
|
## Project status
|
|
8
8
|
|
|
9
|
-
Version `1.1.
|
|
9
|
+
Version `1.1.2` updates audit and monitoring guidance for prepaid organisation credits. Credit purchases and spending approval take place in Tityra. Stable releases use npm's `latest` tag; check the [npm package page](https://www.npmjs.com/package/@tityra/cli) for the currently published version. CI targets Node.js 22 and 24 on Linux, macOS and Windows; local regression tests use isolated fixtures rather than live customer accounts.
|
|
10
10
|
|
|
11
11
|
## Basic functionality
|
|
12
12
|
|
|
13
13
|
- Opens an interactive workspace with browser sign-in, project selection and persistent navigation.
|
|
14
14
|
- Lists audit options and requests, reads released reports and findings, and downloads a published PDF revision.
|
|
15
15
|
- Submits audit requests, finding challenges, discussions and customer-reported remediation with explicit confirmation.
|
|
16
|
-
- Reads
|
|
16
|
+
- Reads funding status. Organisation credit purchases and spending approval take place in Tityra.
|
|
17
17
|
- Returns complete JSON records and stable exit codes for scripts and agents.
|
|
18
18
|
|
|
19
19
|
## What it does not do
|
|
@@ -75,15 +75,17 @@ Audit options describe the existing eligibility and review rules. A submitted re
|
|
|
75
75
|
|
|
76
76
|
### Workspace plans and weekly monitoring
|
|
77
77
|
|
|
78
|
-
|
|
78
|
+
All plans support unlimited organisations and projects. Starter includes two members, Pro includes 10 members at £5/month or £50/year, and Enterprise includes unlimited members at £49/month or £490/year. Subscription prices exclude VAT. Check [current plans and prices](https://app.tityra.com/customer) before subscribing.
|
|
79
79
|
|
|
80
|
-
|
|
80
|
+
Each organisation has its own prepaid balance. **1 credit = £1 including VAT**. Purchased credits do not expire; automatic top-ups are off. Initial Audit remains free. In-Depth Audit starts at 10 credits (£10 including VAT), covering the first 10 successfully reviewed unique HTML pages. Each additional reviewed page costs 1 credit, up to 100 pages per audit. The approved maximum is reserved before work begins. Unused credits are released; technical retries do not charge the same page twice. Expert Review uses 1,000 credits per day after approval of its scope and maximum cost.
|
|
81
81
|
|
|
82
|
-
|
|
82
|
+
Weekly monitoring is available on every plan and consumes organisation credits, with a maximum of 100 pages per run. Enable it in Tityra, where a project manager with organisation spending permission confirms website authority, scope and a recurring credit budget. Existing consent to free monitoring does not authorise paid runs. Each new cycle reserves its budget; insufficient credit automatically pauses monitoring without creating debt and sends an in-app notification and email to the person who authorised it. Membership in another organisation does not share its subscription or balance. Reports are delivered after checks and settlement, and existing reports remain available when monitoring is paused.
|
|
83
83
|
|
|
84
|
-
|
|
84
|
+
The first weekly audit is due seven days after the project's earliest non-cancelled audit request for its current website, or after monitoring consent if no request exists. An overdue eligible project queues one due run when its approved budget can be reserved. Missed weeks do not accumulate. Read the server's `nextScheduledAt` and `history` rather than calculating a new start date locally.
|
|
85
85
|
|
|
86
|
-
|
|
86
|
+
Use `audits list` and `reports get` to read released reports within your selected projects. A paid audit submitted through `audits create` waits for spending approval in Tityra. Neither `audits:create` nor `monitoring:write` authorises credit spending. The CLI can pause monitoring, but cannot enable recurring charges, buy credits, choose a payer or change a subscription. Initial Audit requests retain their eligibility limits.
|
|
87
|
+
|
|
88
|
+
Audit lists show the server's current funding status when the connection has `billing:read`. A missing status does not imply that payment is due. Publication, permission and funding checks remain in force.
|
|
87
89
|
|
|
88
90
|
Monitoring commands require version `1.1.0` or later; version `1.0.0` does not include them. Read settings with `projects:read`. To change them, request `monitoring:write` through fresh consent; default scopes and existing connections stay unchanged. The `--scope` list replaces the defaults, so include any other access you still need.
|
|
89
91
|
|
|
@@ -95,20 +97,17 @@ tityra projects monitoring get PROJECT_ID --json
|
|
|
95
97
|
tityra projects monitoring update PROJECT_ID --input monitoring.json --yes --json
|
|
96
98
|
```
|
|
97
99
|
|
|
98
|
-
|
|
100
|
+
To pause with `monitoring.json`, copy the current `revision` into `expectedRevision` and generate a UUID once for the intended action:
|
|
99
101
|
|
|
100
102
|
```json
|
|
101
103
|
{
|
|
102
|
-
"action": "
|
|
103
|
-
"expectedRevision":
|
|
104
|
-
"expectedWebsite": "https://example.com/",
|
|
105
|
-
"authorisation": true,
|
|
106
|
-
"auditScope": { "mode": "website" },
|
|
104
|
+
"action": "disable",
|
|
105
|
+
"expectedRevision": 1,
|
|
107
106
|
"idempotencyKey": "10000000-0000-4000-8000-000000000001"
|
|
108
107
|
}
|
|
109
108
|
```
|
|
110
109
|
|
|
111
|
-
|
|
110
|
+
Enable, resume or change a recurring credit budget in the Tityra application. The CLI can pause monitoring with `action: "disable"`, the current `expectedRevision` and a new action's `idempotencyKey`. Revision zero is valid for a project without settings. On an uncertain write, retry only the same input and key. The server checks the selected project and current management rights. Pausing remains available after subscription expiry.
|
|
112
111
|
|
|
113
112
|
### 3. Read reports, findings and discussions
|
|
114
113
|
|
|
@@ -151,19 +150,19 @@ tityra discussions create REPORT_ID FINDING_ID --input discussion.json --yes --j
|
|
|
151
150
|
|
|
152
151
|
Other write commands use the same confirmation pattern:
|
|
153
152
|
|
|
154
|
-
| Command | Input fields besides `idempotencyKey`
|
|
155
|
-
| -------------------------------------------------- |
|
|
156
|
-
| `audits create` | `projectId`, `plan` (`free`, `automated`, `human`), `authorisation: true`; optional `notes`, `auditScope`
|
|
157
|
-
| `projects monitoring update PROJECT_ID` | `action
|
|
158
|
-
| `findings challenge REPORT_ID FINDING_ID` | `reason` (`irrelevant`, `false_positive`, `unclear_other`), `body`, `expectedReportRevision`
|
|
159
|
-
| `discussions create REPORT_ID FINDING_ID` | `body`, `expectedReportRevision`
|
|
160
|
-
| `discussions reply REPORT_ID FINDING_ID THREAD_ID` | `body`, `expectedReportRevision`, `expectedThreadRevision`
|
|
161
|
-
| `findings remediate REPORT_ID FINDING_ID` | `status`, `reason`, `expectedReportRevision`, `expectedTrackingRevision`
|
|
162
|
-
| `reports checkout REPORT_ID` | No additional fields
|
|
153
|
+
| Command | Input fields besides `idempotencyKey` |
|
|
154
|
+
| -------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
|
|
155
|
+
| `audits create` | `projectId`, `plan` (`free`, `automated`, `human`), `authorisation: true`; optional `notes`, `auditScope` |
|
|
156
|
+
| `projects monitoring update PROJECT_ID` | `action: "disable"`, `expectedRevision`; approve or change recurring credit budgets in the Tityra application |
|
|
157
|
+
| `findings challenge REPORT_ID FINDING_ID` | `reason` (`irrelevant`, `false_positive`, `unclear_other`), `body`, `expectedReportRevision` |
|
|
158
|
+
| `discussions create REPORT_ID FINDING_ID` | `body`, `expectedReportRevision` |
|
|
159
|
+
| `discussions reply REPORT_ID FINDING_ID THREAD_ID` | `body`, `expectedReportRevision`, `expectedThreadRevision` |
|
|
160
|
+
| `findings remediate REPORT_ID FINDING_ID` | `status`, `reason`, `expectedReportRevision`, `expectedTrackingRevision` |
|
|
161
|
+
| `reports checkout REPORT_ID` | No additional fields |
|
|
163
162
|
|
|
164
163
|
Read current revision fields using `--json` before changing a record. Discussion and challenge messages contain 3–4,000 characters. Remediation statuses are `open`, `planned`, `in_progress`, `resolved`, `wont_fix` and `not_applicable`; `resolved` remains customer-reported rather than independently verified.
|
|
165
164
|
|
|
166
|
-
Audit scope is either `{"mode":"website"}` or `{"mode":"specific_urls","urls":["https://example.com/path"]}`. The project supplies the website. Normal audit requests record your explicit authorisation for that scope without a separate manual staff authority confirmation. Eligibility, scope and commercial checks still apply, and individually requested reports retain staff quality review.
|
|
165
|
+
Audit scope is either `{"mode":"website"}` or `{"mode":"specific_urls","urls":["https://example.com/path"]}`. The project supplies the website. Normal audit requests record your explicit authorisation for that scope without a separate manual staff authority confirmation. Eligibility, scope and commercial checks still apply, and individually requested reports retain staff quality review. Paid monitoring requires the separate recurring credit approval described above. Checkout creates a link for the customer to complete.
|
|
167
166
|
|
|
168
167
|
### 5. Use the CLI in scripts or with an agent
|
|
169
168
|
|
package/dist/commands/audits.js
CHANGED
|
@@ -37,7 +37,7 @@ export function registerAuditsCommands(program, context) {
|
|
|
37
37
|
writeOptions(audits
|
|
38
38
|
.command('create')
|
|
39
39
|
.description('Request an additional audit with explicit authorisation for its website scope')
|
|
40
|
-
.addHelpText('after', '\nYour authorisation: true declaration and the validated website scope provide the required request authorisation. No second manual staff confirmation of website authority is required.\nEligibility, scope and commercial checks still apply. Individually requested reports retain staff quality review.\
|
|
40
|
+
.addHelpText('after', '\nYour authorisation: true declaration and the validated website scope provide the required request authorisation. No second manual staff confirmation of website authority is required.\nEligibility, scope and commercial checks still apply. Individually requested reports retain staff quality review.\nIn-Depth Audits, Expert Reviews and weekly monitoring use prepaid organisation credits. In-Depth Audit starts at 10 credits (£10 including VAT) for the first 10 pages, then 1 credit per additional reviewed page, up to 100 pages. Paid requests submitted by this client require spending approval in Tityra. Existing OAuth permissions do not authorise credit spending.\nUse projects monitoring get to read settings and update to pause. Enable paid monitoring and approve recurring credit budgets in Tityra.\n')).action(async (_options, command) => {
|
|
41
41
|
await write(command, context, 'audit', '/api/agent/audits');
|
|
42
42
|
});
|
|
43
43
|
}
|
|
@@ -21,8 +21,8 @@ export function registerProjectsCommands(program, context) {
|
|
|
21
21
|
});
|
|
22
22
|
writeOptions(monitoring
|
|
23
23
|
.command('update <project-id>')
|
|
24
|
-
.description('
|
|
25
|
-
.addHelpText('after', '\nRequires an explicitly granted monitoring:write permission and current project management access.\nRead settings first; include the current expectedRevision and keep the same input and idempotencyKey when retrying an uncertain write.\nUse action
|
|
24
|
+
.description('Pause weekly monitoring; approve recurring credit spending in Tityra')
|
|
25
|
+
.addHelpText('after', '\nRequires an explicitly granted monitoring:write permission and current project management access.\nRead settings first; include the current expectedRevision and keep the same input and idempotencyKey when retrying an uncertain write.\nUse action disable to pause. Enabling or resuming paid monitoring requires explicit recurring organisation credit approval in Tityra.\nmonitoring:write does not grant financial authority. Confirm website scope and the recurring credit budget in the application.\nEach scheduled audit consumes organisation credits, including on Enterprise. Insufficient credits pause new runs. Read nextScheduledAt and history for the current server state.\nThe CLI cannot select a payer or change a subscription.\n')).action(async (id, _options, command) => {
|
|
26
26
|
await write(command, context, 'monitoring', `/api/agent/projects/${identifier(id)}/monitoring`, 'PATCH');
|
|
27
27
|
});
|
|
28
28
|
}
|
package/package.json
CHANGED