title: What is the task of the 'cliSystemConfigPackages' object in the angular 2 CLI configuration
body: <p>I am using angular 2 and the CLI.</p>
  
  <p>As there exist no information on <a href="https://github.com/angular/angular-cli" rel="nofollow">https://github.com/angular/angular-cli</a></p>
  
  <p>about the meaning of the barrels in combination with the angular 2 CLI tool I ask here...</p>
  
  <p>My angular 2 app works ok so far that means I get no errors during runtime. But I fear sooner/later that will change, because I might not use the angular 2 CLI correctly. That means I do not always use the <code>ng generate component my-new-component</code> to create a component. And when I use it I delete the create index.ts for each component, because I think I do not need it.</p>
  
  <p>So I have 3 questions here:</p>
  
  <ol>
  <li>What is a barrel? A file? folder? A batch of components?</li>
  <li>What means: the main property with the hardcode 'index' here? cliSystemConfigPackages[barrelName] = { main: 'index' };</li>
  <li>When the below configuration is managed by the CLI, what will happen when I do not use the CLI consequently?</li>
  </ol>
  
  <p>That is a part of the <strong>system.config.ts</strong></p>
  
  <pre><code>/***********************************************************************************************
       * Everything underneath this line is managed by the CLI.
       **********************************************************************************************/
      const barrels: string[] = [
        // Angular specific barrels.
        '@angular/core',
        '@angular/common',
        '@angular/compiler',
        '@angular/http',
        '@angular/router',
        '@angular/platform-browser',
        '@angular/platform-browser-dynamic',
  
        // Thirdparty barrels.
        'rxjs',
  
        // App specific barrels.
        'app',
        'app/shared',
        'app/test/create',
        'app/test/edit',
        'app/administration' 
        /** @cli-barrel */
      ];
  
      const cliSystemConfigPackages: any = {};
      barrels.forEach((barrelName: string) =&gt; {
        cliSystemConfigPackages[barrelName] = { main: 'index' };
      });
  </code></pre>