@tunnelhub/mcp 1.0.6 → 1.0.10
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/CONTRIBUTING.md +25 -0
- package/README.md +45 -0
- package/dist/auth/browser-auth.d.ts.map +1 -1
- package/dist/auth/browser-auth.js +8 -4
- package/dist/auth/browser-auth.js.map +1 -1
- package/dist/auth/cognito-client.js +1 -1
- package/dist/auth/cognito-client.js.map +1 -1
- package/package.json +1 -1
package/CONTRIBUTING.md
CHANGED
|
@@ -68,3 +68,28 @@ Package publication is validated with:
|
|
|
68
68
|
pnpm pack:check
|
|
69
69
|
pnpm publish:dry-run
|
|
70
70
|
```
|
|
71
|
+
|
|
72
|
+
## Release process
|
|
73
|
+
|
|
74
|
+
Releases are created from git tags in the format `vX.Y.Z`.
|
|
75
|
+
|
|
76
|
+
Typical flow:
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
pnpm release:patch
|
|
80
|
+
git push origin main --follow-tags
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
Version bump commands:
|
|
84
|
+
|
|
85
|
+
- `pnpm release:patch` for backwards-compatible fixes
|
|
86
|
+
- `pnpm release:minor` for backwards-compatible features
|
|
87
|
+
- `pnpm release:major` for breaking changes
|
|
88
|
+
|
|
89
|
+
The GitHub Actions workflow then:
|
|
90
|
+
|
|
91
|
+
- validates the pushed tag against `package.json`
|
|
92
|
+
- runs `pnpm check`
|
|
93
|
+
- creates the package tarball with `npm pack`
|
|
94
|
+
- publishes to npm using trusted publishing with GitHub Actions OIDC
|
|
95
|
+
- creates or updates the matching GitHub Release
|
package/README.md
CHANGED
|
@@ -381,6 +381,51 @@ Se você estiver evoluindo o MCP internamente, vale sempre validar:
|
|
|
381
381
|
- Consistência dos filtros
|
|
382
382
|
- Qualidade dos exemplos do README
|
|
383
383
|
|
|
384
|
+
## 📦 Releases
|
|
385
|
+
|
|
386
|
+
O repositório publica GitHub Releases e o pacote no npm a partir de tags no formato `vX.Y.Z`.
|
|
387
|
+
|
|
388
|
+
Fluxo recomendado:
|
|
389
|
+
|
|
390
|
+
1. Garanta que a branch principal esteja pronta para release
|
|
391
|
+
2. Atualize a versão com um dos comandos abaixo:
|
|
392
|
+
- `pnpm release:patch` para correções e ajustes compatíveis
|
|
393
|
+
- `pnpm release:minor` para novas funcionalidades compatíveis
|
|
394
|
+
- `pnpm release:major` para mudanças incompatíveis
|
|
395
|
+
3. Envie o commit e a tag:
|
|
396
|
+
|
|
397
|
+
```bash
|
|
398
|
+
git push origin main --follow-tags
|
|
399
|
+
```
|
|
400
|
+
|
|
401
|
+
Quando a tag chegar no GitHub, o workflow de release:
|
|
402
|
+
|
|
403
|
+
- valida se a tag bate com a versão do `package.json`
|
|
404
|
+
- roda `pnpm check`
|
|
405
|
+
- gera o tarball com `npm pack`
|
|
406
|
+
- publica no npm via Trusted Publishing (OIDC)
|
|
407
|
+
- cria ou atualiza a GitHub Release com notas automáticas
|
|
408
|
+
|
|
409
|
+
Para o publish no npm funcionar, configure o pacote no npm com `Trusted Publisher` apontando para `tunnelhub/mcp` e o workflow `release.yml`.
|
|
410
|
+
|
|
411
|
+
Comandos prontos:
|
|
412
|
+
|
|
413
|
+
```bash
|
|
414
|
+
# patch
|
|
415
|
+
pnpm release:patch
|
|
416
|
+
git push origin main --follow-tags
|
|
417
|
+
|
|
418
|
+
# minor
|
|
419
|
+
pnpm release:minor
|
|
420
|
+
git push origin main --follow-tags
|
|
421
|
+
|
|
422
|
+
# major
|
|
423
|
+
pnpm release:major
|
|
424
|
+
git push origin main --follow-tags
|
|
425
|
+
```
|
|
426
|
+
|
|
427
|
+
O histórico manual das releases fica em `CHANGELOG.md`.
|
|
428
|
+
|
|
384
429
|
## 📚 Documentação técnica
|
|
385
430
|
|
|
386
431
|
Detalhes técnicos, arquitetura e comportamento interno estão documentados em inglês:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser-auth.d.ts","sourceRoot":"","sources":["../../src/auth/browser-auth.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"browser-auth.d.ts","sourceRoot":"","sources":["../../src/auth/browser-auth.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,IAAI,CAAS;IAErB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IAEzC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;gBAEvB,IAAI,SAAkD;IAqB5D,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;YA8GxE,mBAAmB;YAenB,UAAU;CAezB"}
|
|
@@ -2,6 +2,9 @@ import express from 'express';
|
|
|
2
2
|
import { v4 as uuidv4 } from 'uuid';
|
|
3
3
|
import open from 'open';
|
|
4
4
|
import net from 'node:net';
|
|
5
|
+
function writeStderr(message) {
|
|
6
|
+
process.stderr.write(`${message}\n`);
|
|
7
|
+
}
|
|
5
8
|
export class BrowserAuthFlow {
|
|
6
9
|
port;
|
|
7
10
|
server;
|
|
@@ -97,13 +100,14 @@ export class BrowserAuthFlow {
|
|
|
97
100
|
}, 5 * 60 * 1000);
|
|
98
101
|
const httpServer = this.server.listen(this.port, async () => {
|
|
99
102
|
const localUrl = `http://localhost:${this.port}`;
|
|
100
|
-
|
|
101
|
-
|
|
103
|
+
writeStderr('');
|
|
104
|
+
writeStderr('Starting TunnelHub MCP authentication...');
|
|
105
|
+
writeStderr(`If browser does not open, visit:\n${localUrl}\n`);
|
|
102
106
|
try {
|
|
103
107
|
await open(localUrl);
|
|
104
108
|
}
|
|
105
109
|
catch (error) {
|
|
106
|
-
|
|
110
|
+
writeStderr(`Failed to open browser automatically: ${String(error)}`);
|
|
107
111
|
}
|
|
108
112
|
});
|
|
109
113
|
httpServer.on('error', (error) => {
|
|
@@ -122,7 +126,7 @@ export class BrowserAuthFlow {
|
|
|
122
126
|
}
|
|
123
127
|
for (let port = preferredPort + 1; port <= preferredPort + 20; port += 1) {
|
|
124
128
|
if (await this.isPortFree(port)) {
|
|
125
|
-
|
|
129
|
+
writeStderr(`OAuth callback port ${preferredPort} busy. Using ${port}.`);
|
|
126
130
|
return port;
|
|
127
131
|
}
|
|
128
132
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser-auth.js","sourceRoot":"","sources":["../../src/auth/browser-auth.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,GAAG,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"browser-auth.js","sourceRoot":"","sources":["../../src/auth/browser-auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cognito-client.js","sourceRoot":"","sources":["../../src/auth/cognito-client.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,6BAA6B,EAC7B,mBAAmB,GAEpB,MAAM,2CAA2C,CAAC;AAGnD,MAAM,OAAO,aAAa;IAChB,MAAM,CAAgC;IAE9C;QACE,IAAI,CAAC,MAAM,GAAG,IAAI,6BAA6B,CAAC;YAC9C,MAAM,EAAE,WAAW;SACpB,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CAAC,QAAgB,EAAE,YAAoB;QACxD,MAAM,KAAK,GAA6B;YACtC,QAAQ,EAAE,oBAAoB;YAC9B,QAAQ,EAAE,QAAQ;YAClB,cAAc,EAAE;gBACd,aAAa,EAAE,YAAY;aAC5B;SACF,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,mBAAmB,CAAC,KAAK,CAAC,CAAC;YAC/C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAEjD,IAAI,CAAC,QAAQ,CAAC,oBAAoB,EAAE,CAAC;gBACnC,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;YACvD,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,QAAQ,CAAC,oBAAoB,CAAC,OAAQ;gBAC/C,WAAW,EAAE,QAAQ,CAAC,oBAAoB,CAAC,WAAY;gBACvD,YAAY,EAAE,YAAY,EAAE,+BAA+B;gBAC3D,SAAS,EAAE,QAAQ,CAAC,oBAAoB,CAAC,SAAU;aACpD,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"cognito-client.js","sourceRoot":"","sources":["../../src/auth/cognito-client.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,6BAA6B,EAC7B,mBAAmB,GAEpB,MAAM,2CAA2C,CAAC;AAGnD,MAAM,OAAO,aAAa;IAChB,MAAM,CAAgC;IAE9C;QACE,IAAI,CAAC,MAAM,GAAG,IAAI,6BAA6B,CAAC;YAC9C,MAAM,EAAE,WAAW;SACpB,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CAAC,QAAgB,EAAE,YAAoB;QACxD,MAAM,KAAK,GAA6B;YACtC,QAAQ,EAAE,oBAAoB;YAC9B,QAAQ,EAAE,QAAQ;YAClB,cAAc,EAAE;gBACd,aAAa,EAAE,YAAY;aAC5B;SACF,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,mBAAmB,CAAC,KAAK,CAAC,CAAC;YAC/C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAEjD,IAAI,CAAC,QAAQ,CAAC,oBAAoB,EAAE,CAAC;gBACnC,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;YACvD,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,QAAQ,CAAC,oBAAoB,CAAC,OAAQ;gBAC/C,WAAW,EAAE,QAAQ,CAAC,oBAAoB,CAAC,WAAY;gBACvD,YAAY,EAAE,YAAY,EAAE,+BAA+B;gBAC3D,SAAS,EAAE,QAAQ,CAAC,oBAAoB,CAAC,SAAU;aACpD,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACrE,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CACF"}
|