Wenlan
Wenlan은 소스 기반 AI 지식베이스·LLM 위키로, 문서·결정을 페이지화해 검색·검토·리뷰 가능
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Mesmo app, agora organizado em camadas com responsabilidades claras.
life-os/
├── index.html ← apenas estrutura HTML (sem CSS/JS embutidos)
│
├── css/ ← Estilos divididos por contexto
│ ├── base.css ← Variáveis CSS, reset, nav, FAB
│ ├── components.css ← Botões, badges, forms, modais, cards
│ ├── tasks.css ← Layout TickTick (3 colunas)
│ ├── calendar-finance.css← Calendário (dia/sem/mês) + finanças
│ ├── projects.css ← Workspace de projetos + editor de notas
│ └── responsive.css ← Todas as media queries
│
└── js/ ← JavaScript em camadas
│
├── config/
│ └── constants.js ← Cores, ícones, durações pomodoro, etc.
│
├── core/ ← Núcleo (sem dependências do DOM)
│ ├── utils.js ← Funções puras (datas, formatação, etc.)
│ ├── storage.js ← Repository pattern p/ localStorage
│ └── state.js ← Estado central da aplicação
│
├── services/ ← Lógica de domínio (sem DOM)
│ ├── taskService.js
│ ├── areaService.js
│ ├── projectService.js
│ ├── financeService.js
│ └── pomodoroService.js
│
├── ui/ ← Helpers de UI (navegação, tema, modais)
│ ├── navigation.js
│ ├── theme.js
│ ├── modal.js
│ └── mobile.js
│
├── components/ ← Componentes reutilizáveis
│ ├── taskModal.js
│ ├── areaModal.js
│ ├── financeModal.js
│ ├── projectModal.js
│ ├── imageResize.js
│ ├── noteEditor.js
│ ├── fileHandler.js
│ └── pomodoroUI.js
│
├── views/ ← Telas (apenas renderização)
│ ├── dashboardView.js
│ ├── tasksView.js
│ ├── taskDetail.js
│ ├── calendarView.js
│ ├── financeView.js
│ └── areasView.js
│
└── app.js ← Bootstrap (conecta tudo)
taskService.js. Mudar o visual das tarefas mexe só no tasks.css ou tasksView.js.views/ e registrar no app.js — nada existente precisa ser modificado.Storage abstrai o localStorage. Para trocar por API ou IndexedDB no futuro, só esse arquivo muda — nada mais sabe que existe localStorage.constants.js.utils.js).storage.js)services/*)pomodoroService → pomodoroUI)Antes era 1 arquivo. Agora a pasta inteira precisa ir junto.
atualizar.batSubstitua seu atualizar.bat pelo atualizar.bat deste pacote — ele copia a pasta inteira em vez de só o HTML.
Copie a pasta life-os/ inteira para dentro do repositório do GitHub Pages (substituindo o index.html anterior).
Idêntico ao anterior. Toda funcionalidade do app foi preservada:
api/mcp.js expõe o Life OS inteiro como um conector MCP, para o Claude (claude.ai / app)
consultar e alterar tarefas, agenda, projetos e notas, áreas, hábitos, inbox, revisão semanal
e finanças (contas, cartões e faturas, orçamentos, recorrências, metas, relatórios).
As ferramentas são as do assistente do app (js/services/aiTools*.js): o servidor roda os
próprios arquivos do app num sandbox vm (api/_mcp/appRuntime.js), então ferramenta nova
lá aparece no conector sozinha, com as mesmas regras. Cada escrita é uma transação que grava
só os campos que mudaram e guarda um backup do valor anterior (users/{uid}/mcpBackups,
últimas 20): a ferramenta undo_last_change desfaz, desde que o dado não tenha mudado
depois no app.
.json.FIREBASE_SERVICE_ACCOUNT = conteúdo inteiro do .json do passo 1LIFEOS_UID = uid do passo 2LIFEOS_MCP_SECRET = uma senha longa e aleatória (ex.: um UUID)https://SEU-APP.vercel.app/api/mcp?key=SEU_LIFEOS_MCP_SECRET⚠️ A chave da conta de serviço e a URL com key= dão acesso total aos seus dados —
não compartilhe nem commite. Para revogar, troque o LIFEOS_MCP_SECRET na Vercel.
Os lançamentos aparecem no app em tempo real (o listener do Firestore aplica a
escrita, marcada com lastWriter: 'mcp-claude').