Pular para o conteúdo
MeghaOS

Selecione o idioma

O MeghaOS fala mais de 100 idiomas na sua própria máquina. Este site está disponível por completo em todos os idiomas listados aqui; nossas páginas legais e os artigos do blog permanecem em inglês.

FIG 2.6 · Code Studio

Um agente de código que abrangetodo o conjunto de trabalho.

O Code Studio é um ambiente no estilo VS Code com um agente de código dedicado. Ele lê através dos arquivos, planeja a mudança à vista e trabalha dentro da pasta que você abriu, com um ponto de restauração antes de cada turno para que tudo possa ser desfeito.

FIG 2.7 · Uma refatoração, composta

Peça uma mudança. Leia o diff. Decida.

A demonstração abaixo roda o cenário do Code Studio: árvore de arquivos, diff preparado e o próprio plano do agente com seu orçamento.

Tirar a autenticação das sessões de servidor

experimente

src/auth/middleware.ts

Preparado. Revise antes de encostar na árvore de trabalho.

typescript
export async function authenticate(req: Request) {
-  const session = await store.get(req.cookies.sid);
-  if (!session) throw new Unauthorized();
+  const token = bearer(req.headers.authorization);
+  const claims = await verify(token, publicKey);
+  if (claims.exp < Date.now() / 1000) throw new Unauthorized();

-  return session.user;
+  return claims.sub;
}
src
auth
session.ts
tokens.ts
middleware.ts
routes
login.ts
tests
auth.test.ts

O plano que ele escreveu para si mesmo

Plano completo50%
FIG 2.7b · A superfície

E este é o Code Studio como ele é entregue.

Um editor completo com árvore de arquivos, faixa de abas e o agente numa coluna ao lado, perguntando antes de mexer em três arquivos, não depois.

Code Studio

Explorer

  • src
  • components
  • lib
  • auth.ts
  • session.ts
  • tokens.ts
  • README.md
auth.tssession.ts
1 import { sign, verify } from 'jsonwebtoken'
2
3 export async function issueSession(userId: string) {
4 const token = sign({ sub: userId }, SECRET, {
5 expiresIn: '15m',
6 });
7
8 // Refresh token rotates on every use.
9 const refresh = await rotate(userId);
10 return { token, refresh };
11 }

Interface, reconstruída na página · v0.1.10

FIG 2.8 · Trabalho em vários arquivos

Refatorações que atravessam arquivos, não trechos que atravessam linhas.

A maioria dos assistentes de código atua sobre o buffer que está na sua frente. O agente do Code Studio atua sobre o conjunto de trabalho: abre o que precisa, registra o que alterou e mantém a mudança coerente em todos os arquivos que toca.

  • Lê e edita em todo o conjunto de trabalho com um único plano
  • Registra quais arquivos são lidos, editados e adicionados, e mostra a você
  • Roda a suíte de testes no espaço de trabalho antes de se declarar pronto
  • Cada passo fica visível enquanto roda, e pode ser interrompido se estiver dando errado
Plano típico
  1. 01
    Resolver o conjunto de trabalho
    Quais arquivos essa mudança realmente toca?
  2. 02
    Criar um ponto de restauração
    Um ponto de retorno, antes de qualquer coisa ser escrita
  3. 03
    Fazer a mudança
    Cada edição aparece como um diff revisável
  4. 04
    Verificar
    Os testes rodam no espaço de trabalho antes de ele reportar que terminou
  5. 05
    Seu para manter ou desfazer
    Um clique rebobina arquivos e conversa juntos
FIG 2.9 · Segurança

Um agente que escreve código é uma questão de segurança.

Tratá-lo como tal é a diferença entre uma demonstração e algo que você pode rodar numa máquina de trabalho.

Tudo acontece dentro do espaço de trabalho

Leituras, escritas e exclusões de arquivos ficam restritas à pasta que você abriu, e caminhos que tentam sair dela são rejeitados. Os comandos rodam com o espaço de trabalho como diretório atual.

Comandos destrutivos são recusados de imediato

Elevação de privilégio, qualquer coisa que desligue a máquina ou reformate um disco, e exclusões apontadas para caminhos absolutos ou relativos à pasta pessoal não rodam. Não há formulação que os faça passar.

Comandos arriscados param e perguntam

Exclusões recursivas, reescritas de histórico, qualquer coisa que publique num remoto e canalizar a rede para um shell ficam retidos para um cartão de aprovação no IDE. Você vê o comando exato antes de ele rodar.

Cada mensagem é um ponto de restauração

O espaço de trabalho é salvo num histórico paralelo, separado do seu próprio controle de versão, antes de cada turno. Desfazer rebobina os arquivos e a conversa juntos, então uma refatoração ruim é um clique e não uma escavação arqueológica.

Aponte-o para um repositório de verdade.

Download gratuito. O código nunca sai da sua máquina, que é a única razão por que é seguro dar tanto acesso a um agente.