davila7/claude-code-templates · error

Failed to load summary

Error message

Failed to load summary

What it means

HTTP 500 from the teams/skill dashboard GET /api/summary when this.loadSkillsData() (or summary computation) throws while scanning skill directories.

Source

Thrown at cli-tool/src/skill-dashboard.js:455

    });

    this.app.get('/api/summary', async (req, res) => {
      try {
        await this.loadSkillsData();
        const personalCount = this.skills.filter(s => s.source === 'Personal').length;
        const projectCount = this.skills.filter(s => s.source === 'Project').length;
        const pluginCount = this.skills.filter(s => s.source === 'Plugin').length;

        res.json({
          total: this.skills.length,
          personal: personalCount,
          project: projectCount,
          plugin: pluginCount,
          timestamp: new Date().toISOString()
        });
      } catch (error) {
        console.error('Error loading summary:', error);
        res.status(500).json({ error: 'Failed to load summary' });
      }
    });

    // Main route
    this.app.get('/', (req, res) => {
      res.sendFile(path.join(__dirname, 'skill-dashboard-web', 'index.html'));
    });
  }

  async startServer() {
    return new Promise((resolve, reject) => {
      const tryPort = (port) => {
        this.httpServer = this.app.listen(port, async () => {
          this.port = port;
          console.log(chalk.green(`🎯 Skills dashboard started at http://localhost:${this.port}`));
          resolve();
        }).on('error', (err) => {
          if (err.code === 'EADDRINUSE') {

View on GitHub (pinned to a0851ed10c)

Solutions

  1. Check server console 'Error loading summary:' for root cause
  2. Verify skills directories exist and are readable
  3. Restart the dashboard to rescan
Defensive patterns

Strategy: retry

Try / catch

try { const s = await getSummary(); } catch { await delay(1000); retryOnce(); }

Prevention

When it happens

Trigger: GET /api/summary while a skill directory is unreadable, a skills path is missing, or the scan routine throws on unexpected content.

Common situations: Skills directory deleted or moved after dashboard start; permission problems in ~/.claude/skills; malformed skill metadata during scan.

Related errors


AI-assisted analysis of davila7/claude-code-templates@a0851ed10c (2026-08-28). Data as JSON: /api/errors/29b29418efc792a6. Report an issue: GitHub.